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
PostgreSQL изменение табличного пространства
Переименование табличного пространства
ALTER TABLESPACE name RENAME TO new_name
name - текущее имя
new_name - новое имя
Пример
# alter tablespace t1 rename to t_new;
ALTER TABLESPACE
Изменение владельца
ALTER TABLESPACE name OWNER TO new_owner
name - имя табличного пространства
new_owner - новый владелец
Пример
# alter tablespace t3 owner to usr2;
ALTER TABLESPACE
Установка или сброс параметров табличного пространства
ALTER TABLESPACE name SET/RESET ( tablespace_option = value [, ... ] )