Иллюстрированный самоучитель по PostgreSQL

Приложение Б. Ключи командной строки postgres.

Программа postgres и является исполнителем, непосредственно обрабатывающим команды SQL. Обычно она не запускается напрямую, а вызывается через многопользовательский процесс postmaster. Впрочем, основные ключи этой программы все же желательно знать, поскольку к ним возможны косвенные обращения при помощи ключа – о программы postmaster.

Ниже приведено описание синтаксиса командной строки postgres.

postgres [ – А { 0 | 1 } 3 [ – В буферы ] [ – с имя=значение ]
[ – d уровень_отладки ] [ – D каталог_данных ] [ – е ] [ – Е ]
[ – f { s | i | n | m | h } ] [ – F ] [ – i ] [ – L ] [ – N ]
[ – о имя_файла ] [ – O ] [ – P ] [ – s | – t { pa | pi | ex } ]
[ – S память ] [ – W интервал ] база_данных
postgres [ – A { 0 ] 1 } ] [ – В буферы ] [ – с имя=значение ]
[ – d уровень_отладки ] [ – 0 каталог_данных ] [ – е ]
[ – f { s | i | n | m | h } ] [ – F ] [ – 1 ]
[ – L ] [ – о имя_файла ] [ – O ] [ – p база_данных ] [ – P ]
[ – s – t { pa | pi | ex } ] [ – S память ]
[ – v версия ] [ – W интервал ]

Параметры:

  • – A { 0 | 1 }. Флаг проверки отладочных директив на стадии выполнения. Позволяет выполнять отладку, если соответствующий ключ был указан во время компиляции. Ключ – А используется только опытными программистами, работающими над самим пакетом PostgreSQL.
  • – В буферы. Количество дисковых буферов в общей памяти, выделяемых для использования postmaster. По умолчанию – 64.

    Примечание
    Значение ключа – В должно быть по крайней мере вдвое больше значения, передаваемого с ключом – N
    .

  • – с имя=значение. Произвольные параметры времени выполнения. Ключ позволяет переопределить любой параметр конфигурации, находящийся в файле postgresql.conf (в каталоге данных кластера).
  • – d уровень отладки. Объем отладочного вывода, регистрируемого серверным процессом. По умолчанию -0. Чем больше число, тем подробнее вывод. Обычно значений до 4 оказывается вполне достаточно, хотя в этом случае журнал может занимать очень много места.

    Примечание
    Если стандартные потоки вывода и ошибок не были перенаправлены от postmaster в файл (на уровне командного интерпретатора или в pg_ctl при помощи ключа – l), вся отладочная информация выводится на управляющем терминале процесса postmaster
    .

  • – D каталог. Каталог данных кластера. Если каталог не задан, postmaster использует либо значение переменной среды PGDATA, либо вложенный каталог /data каталога, указанного в переменной POSTGRESHOME. Если вторая переменная также не существует, используется стандартный каталог, заданный на стадии компиляции (например, /usr/local/pgsql/data).
  • – е. Выбор европейского формата даты. PostgreSQL считает, что в датах вида
  • – Е. Режим вывода эха для передаваемых команд (например, в терминальном сеансе или в журнале на сервере).
  • – f { s | i | n m h }. Запрет некоторых методов перебора и объединения. За ключом указываются следующие параметры:
    • s – запрет последовательного перебора;
    • i – запрет перебора по индексу;
    • n – запрет вложенных циклов;
    • m – запрет слияний;
    • h – запрет хэширующих объединений.
  • – F. Запрет fsync. Ключ повышает быстродействие, по одновременно растет риск порчи данных при внезапных сбоях оборудования или операционной системы. Хорошенько подумайте, прежде чем устанавливать этот флаг!
  • – i. Запрет выполнения запросов (PostgreSQL ограничивается выводом плана).
  • – l. Запрет блокировки. При наличии этого ключа в PostgreSQL исчезает возможность блокировки таблиц.
  • – N. Ключ – N запрещает использование символа новой строки в качестве разделителя команд.
  • – O. Ключ – O разрешает модификацию системных таблиц.
  • – Р. база_данных. Ключ postmaster, означающий, что экземпляр postgres был запущен процессом postmaster, подключившимся к базе данных. При наличии ключа postgres принимает другие решения при операциях с памятью и файловыми дескрипторами.
  • – s. При установке этого ключа PostgreSQL после каждого запроса выводит статистику (время выполнения запросов и т. д.), используемую при хронометраже и выборе количества буферов (ключ – В).
  • – S память. Объем памяти, выделяемой для внутренних операции сортировки и хэширования. При исчерпании выделенной памяти PostgreSQL переходит на использование временных файлов на жестком диске. Объем памяти задается в килобайтах и по умолчанию равен 512. В сложных командах могут одновременно выполняться несколько операций сортировки пли хэширования; каждой операции выделяется блок памяти заданного размера, после заполнения которого используются временные файлы.
  • – t { pa pi | ex }. Режим хронометража, относящийся к одному из основных компонентов postgres. За ключом – t указывается признак компонента:
    • ра – хронометраж модуля лексического разбора;
    • рl – хронометраж планировщика;
    • е – хронометраж исполнительного модуля.

    Примечание
    Ключи – t и – s являются взаимоисключающими
    .

  • – W интервал. Интервал ожидания. При установке этого ключа PostgreSQL перед запуском делает паузу заданной продолжительности (в секундах), в течение которой программист подключает отладчик.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.