PostgreSQL, работа с дампами
Дано.
Хост: localhost
Сервер баз данных: PostgreSQL 11
(и ниже, использовалось начиная с 8-ой версии)
База данных: mydb
Пользователь: postgres
Пароль: отсутствует (режим trust
для localhost
)
Задача.
Создать дамп базы данных и восстановить его. В имени файла дампа должен содержаться год, месяц и день его создания.
Решение.
Создать дамп:
pg_dump --file="mydb-$(date +\%Y-\%m-\%d).bak" -F c -U postgres -h localhost mydb;
Если события происходят 28.01.2020, создаст файл mydb-2020-01-28.bak
в текущей директории.
Восстановить дамп:
pg_restore -F c -h localhost -d mydb -U postgres -cO --if-exist mydb-2020-01-28.bak
Комментарии.
Назначение использованных аргументов можно посмотреть с помощью pg_dump --help
и pg_restore --help
.