在 open 命令可以使用之前,它所依赖的那些表必须已经存在,并且其中已经有了将要被打开之表对应的条目。(这些最基本的表包括 pg_class、pg_attribute、pg_proc 和 pg_type。)为了让这些表本身也能够被填充,带 bootstrap 选项的 create 命令会隐式打开刚创建的表,以便插入数据。
同样,declare index 和 declare toast 命令也必须等到它们所需的系统目录已经创建并填充完毕之后才能使用。
因此,postgres.bki 文件的结构必须如下:
对某个关键表执行 create bootstrap
用 insert 插入至少足以描述这些关键表的数据
close
对其他关键表重复上述步骤。
对某个非关键表执行 create(不带 bootstrap)
open
用 insert 插入所需数据
close
对其他非关键表重复上述步骤。
定义索引和 TOAST 表。
build indices
无疑还存在其他未文档化的顺序依赖。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。