pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
后端接口(BKI)文件是用一种特殊语言编写的脚本, 它们是运行在特殊“引导”模式下的 Postgres 后端的输入,这种模式使后端能够在 数据库系统尚不存在的情况下执行数据库功能。 因此 BKI 文件可以用于最初创建 数据库系统。(它们大概对其他任何事情都没有用处。)
initdb 在创建新的数据库集簇时,使用 BKI 文件来完成它的一部分工作。 initbd 使用的输入文件是构建和安装 Postgres 的一部分,由一个名为 genbki.sh 的程序从源码树中一些采用特殊格式的 C 头文件创建。创建的 BKI 文件名为 global.bki(用于全局目录)和 template1.bki(用于最初存储在 template1 数据库中、随后复制到每个创建的数据库中的那些目录),通常安装在安装树的 share 子目录中。
相关信息可以在 initdb 的文档中找到。
本节描述 Postgres 后端如何解释 BKI 文件。如果手边有一份 global.bki 文件作为示例,这段说明会更容易理解。 你还应当研究 initdb 的源代码,以了解后端是如何被调用的。
BKI 输入由一系列命令组成。根据命令语法的不同,每条命令由若干 词元组成。词元通常由空白分隔,但如果不会产生歧义,也可以不分隔。没有专门的命令分隔符;语法上不可能属于前一条命令的下一个词元,就会开始一条新命令。(通常为了清晰,你会把新命令写在新的一行。)词元可以是某些关键字、特殊字符(圆括号、逗号等)、数字,或者双引号字符串。所有内容都区分大小写。
以 # 开头的行会被忽略。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。