Резервное копирование и восстановление базы 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
Добавить комментарий

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