codecamp

PostgreSQL 自举BKI文件的结构

open命令打开某个表时,它需要系统中已经存在一些表并且其中要具有与被打开表相关的项,在这些先决条件满足之前,open命令不能被使用(这些至少应该存在的表是pg_classpg_attributepg_procpg_type)。 为了允许这些表本身被填充,带着bootstrap选项的create将会隐式打开所创建的表用于插入数据。

同样,declare indexdeclare toast命令也必须在相关系统目录被创建和填充之后才能被使用。

因此,postgres.bki文件的结构必须是:

  1. create bootstrap其中一个关键表

  2. insert数据,这些数据至少要能描述这些关键表

  3. close

  4. 重复创建其他关键表。

  5. create(不带bootstrap)一个非关键表

  6. open

  7. insert需要的数据

  8. close

  9. 重复创建其他非关键表。

  10. 定义索引和TOAST表。

  11. build indices

无疑还有其它未被文档记录的顺序依赖关系。

PostgreSQL BKI命令
PostgreSQL BKI例子
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

PostgreSQL SQL语言

PostgreSQL 服务器管理

PostgreSQL 客户端接口

PostgreSQL 服务器编程

PostgreSQL 参考

PostgreSQL 内部

PostgreSQL 附录

PostgreSQL 参考书目

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }