19.2. Местоположение файлов#

19.2. Местоположение файлов

19.2. Местоположение файлов

В дополнение к файлу postgresql.conf, уже упомянутому, Tantor Certified использует еще два редактируемых вручную файла конфигурации, которые управляют аутентификацией клиента (их использование обсуждается в разделе Глава 20). По умолчанию все три файла конфигурации хранятся в каталоге данных кластера базы данных. Параметры, описанные в этом разделе, позволяют разместить файлы конфигурации в другом месте. (Это может упростить администрирование. В частности, часто проще обеспечить правильное резервное копирование файлов конфигурации, когда они хранятся отдельно).

data_directory (string)

Указывает каталог, который будет использоваться для хранения данных. Этот параметр может быть установлен только при запуске сервера.

config_file (string)

Указывает основной файл конфигурации сервера (обычно называемый postgresql.conf). Этот параметр может быть установлен только в командной строке postgres.

hba_file (string)

Указывает файл конфигурации для аутентификации на основе хоста (обычно называемый pg_hba.conf). Этот параметр может быть установлен только при запуске сервера.

ident_file (string)

Указывает файл конфигурации для отображения имени пользователя (обычно называемый pg_ident.conf). Этот параметр может быть установлен только при запуске сервера. См. также Раздел 20.2.

external_pid_file (string)

Указывает имя дополнительного файла идентификатора процесса (PID), который сервер должен создать для использования программами администрирования сервера. Этот параметр может быть установлен только при запуске сервера.

Указывает уровень очистки содержимого файлов таблиц перед удалением, чтобы предотвратить их восстановление в целях безопасности. Возможные варианты:

  • нет — содержимое файлов таблицы остается на диске.

  • trancate — содержимое файлов таблицы обрезается, а затем размер файла восстанавливается.

  • zero — содержимое файлов таблицы перезаписывается значениями 0.

  • random — содержимое файлов таблицы перезаписывается случайными значениями.

В стандартной установке ни один из вышеперечисленных параметров не устанавливается явно. Вместо этого каталог данных указывается с помощью параметра командной строки -D или переменной среды PGDATA, а все файлы конфигурации находятся внутри каталога данных.

Если нужно хранить файлы конфигурации не там же, где каталог данных, то параметр postgres -D командной строки или переменная среды PGDATA должны указывать на каталог, содержащий файлы конфигурации, а параметр data_directory должен быть установлен в postgresql.conf (или в командной строке), чтобы указать фактическое расположение каталога данных. Обратите внимание, что параметр data_directory переопределяет -D и PGDATA для расположения каталога данных, но не для расположения файлов конфигурации.

Если нужно, вы можете указать имена и расположение файлов конфигурации индивидуально, используя параметры config_file, hba_file и/или ident_file. config_file может быть указан только в командной строке postgres, но остальные могут быть установлены в основном файле конфигурации. Если все три параметра, а также data_directory явно указаны, то необходимость указывать -D или PGDATA отпадает.

При установке любого из этих параметров относительный путь будет интерпретироваться относительно каталога, в котором запускается postgres.