Перейти к содержанию

Администрирование

Коротко

Базовые операции: создание БД/пользователей, права, бэкапы. Команды выполняются в psql или через утилиты pg_dump/pg_restore.

Команды

Создание базы данных:

SQL
CREATE DATABASE mydb;

Удаление базы данных:

SQL
DROP DATABASE mydb;

Создание пользователя:

SQL
CREATE USER myuser WITH PASSWORD 'secret';

Выдать все права на БД:

SQL
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

Изменить пароль:

SQL
ALTER USER myuser WITH PASSWORD 'newpass';

Удалить пользователя:

SQL
DROP USER myuser;

Примеры

Бэкап базы в SQL-файл:

Bash
pg_dump -d mydb -f backup.sql

Бэкап в сжатый формат (рекомендуется для больших БД):

Bash
pg_dump -d mydb -Fc -f backup.dump

Бэкап одной таблицы:

Bash
pg_dump -d mydb -t users -f users.sql

Восстановление из SQL-файла:

Bash
psql -d mydb -f backup.sql

Восстановление из сжатого формата:

Bash
pg_restore -d mydb backup.dump

Восстановление с пересозданием БД:

Bash
pg_restore -C -d postgres backup.dump

Флаг -C создаст БД перед восстановлением.

Параллельное восстановление (быстрее):

Bash
pg_restore -d mydb -j 4 backup.dump