| PostgreSQL 8.0.0 中文文件(轉譯自 PostgreSQL 中國 製作的簡體中文版本) | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Fast Forward | Next | |
後端接口(BKI)文件是一些用特殊語言寫的腳本,這些腳本是 PostgreSQL 後端能夠理解的,以特殊的 "bootstrap"(引導)模式執行, 這種模式允許在不存在系統資料表的零初始條件下執行資料庫函數,而普通的 SQL 命令要求系統資料表必須存在。 因此 BKI 文件可以用於在第一時間建立資料庫系統。 (可能除此以外也沒有其它用處。)
在建立一個新的資料庫集群的時候, initdb就是使用 BKI 文件來完成其工作的一部分。 initdb使用的輸入的文件是作為製作 PostgreSQL的一部分,由一個叫 genbki.sh 的程序建立的, 這個程序讀取原始碼樹目錄的 src/include/catalog/ 目錄裡面的幾個特殊格式的 C 頭文件。生成的 BKI文件叫 postgres.bki 並且通常安裝在安裝樹裡的 share 子目錄。
相關的訊息可以在有關 initdb 的文件中找到。
本節描述 PostgreSQL 後端是如何理解 BKI 文件。如果把 postgres.bki 文件拿來做為例子, 這些描述會變得容易理解些。 您還可以學習 initdb 的源程序以便獲取後端是如何激活的概念。
BKI輸入是由一系列命令組成的。 命令是由一些記號組成的,具體是什麼由命令語法決定。記號通常是用空白分隔的,但是如果沒有歧義的話可以不要。 沒有什麼特殊的命令分隔符;語法上無法屬於前面命令的記號開始新的一條命令。 (通常您會把一條新的命令放在新的一行上以保持清晰。) 記號可以是某些關鍵字,特殊字元(圓括弧,逗號等),數字,或者雙引號字串。 所有東西都是大小寫敏感的。
以 # 開頭的行被忽略。