?
本文檔使用
php中文網(wǎng)手冊(cè) 發(fā)布
這個(gè)附錄包含contrib路徑下相關(guān)模塊的信息。 包括移植工具,分析工具和插件工具,他們不是PostgreSQL核心系統(tǒng)的一部分,主要因?yàn)? 只有很少的用戶會(huì)用到。但不會(huì)影響它們的使用。
當(dāng)從源碼發(fā)布包編譯時(shí),這些模塊不會(huì)自動(dòng)編譯,除非編譯了“world”目標(biāo)(參閱step 2)。 可以在配置的源代碼樹(shù)中的contrib路徑下,通過(guò)下面的命令編譯安裝:
gmake gmake install
或在模塊的子目錄下,有選擇的編譯安裝模塊。許多模塊都有回歸測(cè)試,在PostgreSQL服務(wù)器在運(yùn)行時(shí),可以通過(guò)下面的命令執(zhí)行:
gmake installcheck
需要注意的是,不支持gmake check;必須有一個(gè)可操作的數(shù)據(jù)庫(kù)服務(wù)器來(lái)運(yùn)行這些測(cè)試, 并且必須已經(jīng)編譯安裝了這個(gè)或這些要測(cè)試的模塊。
如果是用的是預(yù)打包版的PostgreSQL,這些模塊可以作為一個(gè)單獨(dú)的子包來(lái)獲得, 如postgresql-contrib。
許多模塊支持新的用戶自定義函數(shù),操作符,或數(shù)據(jù)類型。 在已經(jīng)安裝了代碼之后,為了使用這些模塊,需要在數(shù)據(jù)庫(kù)系統(tǒng)中注冊(cè)新的對(duì)象,通過(guò)運(yùn)行模塊目錄下提供的.sql文件中的SQL命令,如;
psql -d dbname -f SHAREDIR/contrib/module.sql
在此,SHAREDIR表示安裝的"share"路徑(pg_config --sharedir 會(huì)指出它是什么)。 在多數(shù)情況下,必須使用數(shù)據(jù)庫(kù)超級(jí)用戶來(lái)運(yùn)行這個(gè)腳本。
需要在每個(gè)你想使用該模塊的數(shù)據(jù)庫(kù)中運(yùn)行這個(gè).sql腳本。 另外,在template1數(shù)據(jù)庫(kù)中運(yùn)行這個(gè)腳本,以便這個(gè)模塊可以被復(fù)制到缺省隨后創(chuàng)建的數(shù)據(jù)庫(kù)中。
可以通過(guò)調(diào)整.sql文件中的第一條命令來(lái)決定想在數(shù)據(jù)庫(kù)中的那個(gè)模式下進(jìn)行創(chuàng)建。 缺省使用的是public。
在PostgreSQL主版本升級(jí)之后,再次運(yùn)行安裝腳本,即使通過(guò)轉(zhuǎn)儲(chǔ)恢復(fù)已經(jīng)有了這個(gè)模塊。 這是為了保證那些新的函數(shù)是可用的,并且任何必要的更正將被應(yīng)用。