Документация по PostgreSQL 8.0.1 | ||||
---|---|---|---|---|
Prev | Fast Backward | Fast Forward | Next |
Файлы backend интерфейса (BKI) являются скриптами, написанными на специальном языке, который понимает backend процесс PostgreSQL при запуске в режиме "bootstrap". Режим bootstrap позволяет создавать и заполнять системные каталоги "с нуля", в то время как обычные команды SQL требуют, чтобы системные каталоги уже существовали. BKI файлы могут, таким образом, использоваться для первичного создания базы данных в определённом месте. (И, возможно, они не являются полезными для чего-либо другого).
initdb использует BKI файл при создании нового кластера базы данных, чтобы выполнить часть своей работы. Этот файл создаётся как часть процесса сборки и установки PostgreSQL путём запуска скрипта genbki.sh. Данный скрипт читает некоторые специально форматированные заголовочные файлы языка C в подкаталоге src/include/catalog/ дерева исходных текстов. Созданный BKI файл называется postgres.bki и обычно устанавливается в подкаталог share дерева установки.
Соответствующую информацию можно найти в документации по initdb.
Данная секция описывает как backend процесс PostgreSQL интерпретирует файлы BKI. Это описание будет более лёгким для понимания, если в качестве примера использовать файл postgres.bki.
Ввод BKI состоит из последовательности команд. Команды состоят из нескольких токенов, в зависимости от синтаксиса команды. Токены обычно разделяются пробелами, но в принципе их можно не разделять, если только это не вносит путаницы. Специальных разделителей команд не существует; следующий токен, который синтаксически не может следовать за началом текущей команды, начинает новую команду. (Обычно, для удобства вы должны бы размещать новую команду с новой строки). Токены могут быть определёнными ключевыми словами, специальными символами (скобки, запятые и т.д.), цифрами или заключёнными в двойные кавычки строками. Все токены зависят от регистра букв.
Строки, которые начинаются с # игнорируются.