Резервное копирование и восстановление базы PostgreSQL. Полезные команды

Резервное копирование базы PostgreSQL (Backup)

[root@localhost]# pg_dump --host localhost --port 5432 --username "postgres" --role "postgres" --no-password --format tar --blobs --encoding UTF8 --verbose --file /home/backup/postgres.dump "dbname"

или можно так

[root@localhost]# pg_dump -U user dbname > /home/backup/postgres.dump

Восстановление базы PostgreSQL (Restore)

[root@localhost]# /usr/pgsql-9.6/bin/pg_restore -U postgres -d dbname /home/backup/postgres.dump

или можно так

Переключаемся на пользователя postgres

[root@localhost]# su - postgres

Восстанавливаем

bash-4.2$ psql -h localhost -U postgres -p 5432 dbname < /home/backup/postgres.dump

Полезные команды при работе с PostgreSQL в консоле

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

Переключаемся на пользователя postgres и запускаем psql

[root@localhost]# su - postgres
bash-4.2$ psql

Создаем базу «dbname», создаем пользователя «dbuser» с паролем «pass», назначаем привилегии и выходим

postgres=# create database dbname with encoding='UNICODE';
postgres=# create user dbuser with password 'pass';
postgres=# grant all privileges on database dbname to dbuser;
postgres=# \q

Ставим пароль на пользователя postgres

Переключаемся на пользователя postgres и запускаем psql

[root@localhost]# su - postgres
bash-4.2$ psql

Задаем пароль и выходим

postgres=# \password
Enter new password: postgres
Enter it again: postgres
postgres=# \q

Либо можно так:

postgres=# ALTER ROLE postgres WITH PASSWORD 'postgres';
postgres=# \q

Перезагрузить конфиг postgresql без перезапуска службы

Переключаемся на пользователя postgres

[root@localhost]# su - postgres

Перезагружаем конфиг

bash-4.2$ /usr/pgsql-9.6/bin/pg_ctl reload

Еще команды для работы с PostgreSQL

Выбрать базу dbname

bash-4.2$ psql -d dbname

Посмотреть колонки

postgres=# \d

Выводит список пользователей базы данных

postgres=# \du

Выводит список схем

postgres=# \dn

Выводит список баз данных на сервере и показывает их имена, владельцев, кодировку набора символов и права доступа

postgres=# \l

Максим Макаров

У блога появился хостинг, его любезно предоставила компания Облакотека. Облакотека - облачные сервисы для создания и управления виртуальной ИТ-инфраструктурой.
Если вам понравился мой блог и вы хотели бы видеть на нем еще больше полезных статей, большая просьба поддержать этот ресурс.

Оцените автора
IT Draft
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.