Шифрование и секретность в Linux


Архивация файловой системы PostgreSQL



Листинг 9.25. Архивация файловой системы PostgreSQL

[postgres@booktown -]$ cd /usr/local /pgsql

[postgres@booktown pgsql]$ pg_ctl stop

Smart Shutdown request at Fri Sep 14 14:54:15 2001

DEBUG: shutting down

waiting for postmaster to shut down ...... DEBUG: database system is shut down

done

postmaster successfully shut down

[postgres@booktown pgsql]$ tar czf pgsql .bak.tar.gz data/

[postgres@booktown pgsql ]$ Is -1 *.tar.gz

-rw-rw-r-&thinsp:- 1 postgres postgres 66124795 Sep 14 14:36 pgsql .bak.tar.gz

Обратите внимание: приложение pg_ctl перед вызовом tar останавливает сервер PostgreSQL (с таким же успехом можно вызвать сценарий SysV с командой service, если он установлен в системе). Как упоминалось выше, остановка сервера обеспечивает синхронизацию изменений в базах данных с жестким диском, а также предотвращает возможную модификацию файлов данных в процессе архивации.

Главное преимущество подобного способа архивации заключается в том, что вы получаете фактическую копию файлов данных PostgreSQL. Чтобы восстановить базу данных по такому архиву, необходимо распаковать его в соответствующий каталог и перезапустить сервер. Вам не придется беспокоиться о ключах командной строки, правах принадлежности объектов или потенциальных конфликтах между результатами, полученными программой pg_dump, и существующей базой данных на сервере PostgreSQL.

Тем не менее, несмотря на несомненную простоту реализации, этот способ обладает рядом недостатков. Во-первых, для архивации или восстановления данных приходится останавливать сервер, при этом теряется основное преимущество оперативной архивации — максимальная работоспособность сервера. Во-вторых, вам не удастся архивировать только определенные базы данных или таблицы — для полного восстановления приходится архивировать весь каталог, поскольку с каждой базой данных связано несколько файлов и не всегда понятно, к какой базе данных относится тот или иной файл.

Наконец, рабочая база данных на диске содержит не только абстрактную информацию, но и большой объем служебной информации, поэтому даже сжатая копия каталога данных занимает значительно больше места на диске.



Содержание раздела