Приложение Б. Ключи командной строки postgres
Программа postgres и является исполнителем, непосредственно обрабатывающим
команды SQL. Обычно она не запускается напрямую, а вызывается через многопользовательский
процесс postmaster. Впрочем, основные ключи этой программы все же желательно
знать, поскольку к ним возможны косвенные обращения при помощи ключа -о
программы postmaster.
Ниже приведено описание синтаксиса командной строки postgres.
postgres [ -А { 0 | 1 } 3 [ -В буферы ] [ -с имя=значение
]
[ -d уровень_отладки ] [ -D каталог_данных ] [ -е ] [ -Е
]
[ -f { s | i | n | m | h } ] [ -F ] [ -i ] [ -L ] [ -N
]
[ -о имя_файла ] [ -0 ] [ -P ] [ -s | -t { pa | pi | ex
} ]
[ -S память ] [ -W интервал ] база_данных
postgres [ -A { 0 ] 1 } ] [ -В буферы ] [ -с имя=значение
]
[ -d уровень_отладки ] [ -0 каталог_данных ] [ -е ]
[ -f { s | i | n | m | h } ] [ -F ] [ -1 ]
[ -L ] [ -о имя_файла ] [ -0 ] [ -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 — запрет вложенных циклов;
- т — запрет слияний;
- h — запрет хэширующих объединений.
- - F. Запрет fsync. Ключ повышает быстродействие, по одновременно
растет риск порчи данных при внезапных сбоях оборудования или операционной
системы. Хорошенько подумайте, прежде чем устанавливать этот флаг!
- -i. Запрет выполнения запросов (PostgreSQL ограничивается выводом
плана).
- -l. Запрет блокировки. При наличии этого ключа в PostgreSQL исчезает
возможность блокировки таблиц.
- -N. Ключ -N запрещает использование символа новой строки в качестве
разделителя команд.
- -0. Ключ -0 разрешает модификацию системных таблиц.
- -Р. база_данных. Ключ postmaster, означающий, что экземпляр postgres
был запущен процессом postmaster, подключившимся к базе данных. При
наличии ключа postgres принимает другие решения при операциях с памятью
и файловыми дескрипторами.
- - s. При установке этого ключа PostgreSQL после каждого запроса выводит
статистику (время выполнения запросов и т. д.), используемую при хронометраже
и выборе количества буферов (ключ -В).
- -S память. Объем памяти, выделяемой для внутренних операции сортировки
и хэширования. При исчерпании выделенной памяти PostgreSQL переходит
на использование временных файлов на жестком диске. Объем памяти задается
в килобайтах и по умолчанию равен 512. В сложных командах могут одновременно
выполняться несколько операций сортировки пли хэширования; каждой операции
выделяется блок памяти заданного размера, после заполнения которого
используются временные файлы.
- -t { pa pi | ex }. Режим хронометража, относящийся к одному из основных
компонентов postgres. За ключом -t указывается признак компонента:
- ра — хронометраж модуля лексического разбора;
- рl — хронометраж планировщика;
- е — хронометраж исполнительного модуля.
ПРИМЕЧАНИЕ
Ключи -t и -s являются взаимоисключающими.
- -W интервал. Интервал ожидания. При установке этого ключа PostgreSQL
перед запуском делает паузу заданной продолжительности (в секундах),
в течение которой программист подключает отладчик.
|