PostgreSQL — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
Строка 50: Строка 50:
 
  # pg_dump <font color=blue>DATABASE</font> > dump.sql - дамп базы
 
  # pg_dump <font color=blue>DATABASE</font> > dump.sql - дамп базы
 
  # pg_dump <font color=blue>DATABASE</font> < dump.sql - восстановление базы из дампа
 
  # pg_dump <font color=blue>DATABASE</font> < dump.sql - восстановление базы из дампа
 +
 +
 +
Увидеть роль, которую мы используем
 +
  SELECT current_user, session_user;
 +
  current_user | session_user
 +
  --------------+--------------
 +
  postgres    | postgres
 +
  (1 row)

Версия 17:09, 19 апреля 2022

Установка на Ubuntu

# deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main
# wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
# apt-get install postgresql-{VERSION}


Конфиги postgresql.conf - порт, интерфейсы и тд
pg_hba.conf - конфиг аутентификации пользователей

Управление

pg_ctlcluster 9.4 main stop
pg_ctlcluster 9.4 main start
pg_ctlcluster 9.4 main reload

Заходим под пользователем postgres

# sudo -i -u postgres


Подключаемся к постгресу

# psql

Суперпользователь в PostgreSQL называется postgres. Заводим ему пароль

postgres=# ALTER USER postgres WITH PASSWORD 'password';

или так

\password postgres


После этого рихтуем pg_hba.conf и рестартим постгрес

меняем peer
local   all             postgres                                peer
на md5
local   all             postgres                                md5


postgres=# \c - под каким пользователем и к какой базе подключились
postgres=# \l - список БД
postgres=# \d - список таблиц
postgres=# \с dbname - выбрать базу
postgres=# \q - выход
postgres=# \h [COMMAND]- вывод помощи
postgres=# create database DATABASE; - создать базу
postgres=# create user USER with login; - создать пользователя test с возможностью логина
postgres=# create user USER with password 'qwerty'; - создать пользователя с паролем
postgres=# create database DATABASE owner USER; - создать базу тест, владельцем которой будет test
postgres=# grant all privileges on database DATABASE to USER; - права на базу
postgres=# drop database DATABASE; - удалить базу
# pg_dump DATABASE > dump.sql - дамп базы
# pg_dump DATABASE < dump.sql - восстановление базы из дампа


Увидеть роль, которую мы используем

 SELECT current_user, session_user;
  current_user | session_user 
 --------------+--------------
  postgres     | postgres
 (1 row)