PostgreSQL резервное копирование и восстановление с помощью SQL дампов
Резервное копирование отдельной базы данных в дамп файл
# su - postgres
$ pg_dump d1 > db01_dump
Восстановление базы данных
$ psql d1 < d1_dump
db1 - имя базы данных
db1_dump - дамп файл с командами SQL
Резервное копирования всех баз данных и табличных пространств
$ pg_dumpall > dump_all
Восстановление
$ psql -f dump_all postgres
Сжатие резервной копии
$ pg_dumpall | gzip > dump_all.gz
Разделение резервной копии на отдельные файлы
$ pg_dump d1 | split -b 10m - split_dump
10m - разделяется на файлы равные 10 мегабайт
split_dump - название дампа
Восстановление из отдельных файлов-дампов
$ cat split_dump* | psql d01
Создание дампа базы данных с одного сервера на другой
$ pg_dump -h srv01 d1 | psql -h srv02 d1
srv01(02) - сервер1, сервер2