Резервное копирование и восстановление PostgreSQL
Содержание
- Содержание
- Полная резервная копия всех баз данных со всеми пользователями и их правами
- Восстановление резервной копии всех баз данных со всеми пользователями и их правами
- Резервная копия только одной базы данных
- Восстановление резервной копии только одной базы данных
- Резервное копирование только одной или нескольких таблиц одной базы данных
- Резервное копирование только пользователей и их прав
- Резервное копирование и восстановление базы данных под другим владельцем
- Физическая резервная копия в каталог
- Восстановление физической резервной копии из каталога
- Физическая резервная копия в tar-файлы
- Восстановление из физической резервной копии
- Физическая резервная копия в один сжатый tar-файл
- Использованные материалы
Полная резервная копия всех баз данных со всеми пользователями и их правами
pg_dumpall > savedfile.sql
Восстановление резервной копии всех баз данных со всеми пользователями и их правами
psql postgres -f savedfile.sql
Резервная копия только одной базы данных
pg_dump -d dname > savedfile.sql
Восстановление резервной копии только одной базы данных
psql dbname -f savedfile.sql
Резервное копирование только одной или нескольких таблиц одной базы данных
pg_dump -d dname -t table1 -t table2 -t table3 > savedfile.sql
Резервное копирование только пользователей и их прав
pg_dumpall -g > users.sql
Резервное копирование и восстановление базы данных под другим владельцем
pg_dump -d database --no-owner > savedfile.sql
psql -U newowner dbname -f savedfile.sql
Физическая резервная копия в каталог
pg_basebackup -D /destination/path -Pv --checkpoint=fast
Восстановление физической резервной копии из каталога
chown postgres:postgres -R /destination/path
chmod 700 -R /destination/path
Физическая резервная копия в tar-файлы
pg_basebackup -D /destination/path -Pv --checkpoint=fast -F t
Будут сформированы файлы base.tar и pg_wal.tar
Восстановление из физической резервной копии
Распаковываем файл base.tar в каталог с файлами баз данных, затем распаковываем файл pg_wal.tar в подкаталог pg_wal.
Физическая резервная копия в один сжатый tar-файл
pg_basebackup -D /destination/path -Pv --checkpoint=fast -F t -X stream -z