目錄
前言
設(shè)置配置參數(shù)
設(shè)置本地配置參數(shù)
設(shè)置master配置參數(shù)?
設(shè)置系統(tǒng)級別參數(shù)
?設(shè)置數(shù)據(jù)庫級別參數(shù)
?設(shè)置角色級別參數(shù)
?設(shè)置會(huì)話級別參數(shù)?
查看服務(wù)器配置參數(shù)設(shè)置
前言
????????據(jù)庫的配置文件postgresql.conf 位于數(shù)據(jù)庫實(shí)例的數(shù)據(jù)目錄之下。master和每一個(gè)實(shí)例都有自己的postgresql.conf文件。其中一些參數(shù)是本地的:每個(gè)實(shí)例檢查它的postgresql.conf文件來得到這類參數(shù)的值。在master和每一個(gè)實(shí)例上都要設(shè)置本地參數(shù)。
設(shè)置配置參數(shù)
????????很多配置參數(shù)限制了誰能改變它們以及何時(shí)何處可以被設(shè)置。例如,要改變特定的參數(shù),用戶必須是數(shù)據(jù)庫超級用戶。 其他參數(shù)只能從postgresql.conf文件中在系統(tǒng)級別上被設(shè)置,或者還要求系統(tǒng)重啟讓設(shè)置生效。很多配置參數(shù)是會(huì)話參數(shù)。用戶可以在系統(tǒng)級別、數(shù)據(jù)庫級別、角色級別或者會(huì)話級別設(shè)置會(huì)話參數(shù)。數(shù)據(jù)庫用戶可以在他們的 會(huì)話中改變大部分會(huì)話參數(shù),但是某些要求超級用戶權(quán)限。
設(shè)置本地配置參數(shù)
????????要在多個(gè)實(shí)例中改變一個(gè)本地配置參數(shù),在每一個(gè)目標(biāo)實(shí)例的postgresql.conf文件中更新該參數(shù)。使用gpconfig工具可以在所有的postgresql.conf文件中設(shè)置一個(gè)參數(shù)。例如:
$ gpconfig -c gp_vmem_protect_limit -v 4096
????????重啟數(shù)據(jù)庫讓配置改變生效:
$ gpstop -r
設(shè)置master配置參數(shù)?
????????要設(shè)置master配置參數(shù),請?jiān)?/span>數(shù)據(jù)庫的master實(shí)例上設(shè)置它。如果它是一個(gè)session參數(shù), 用戶可以為一個(gè)特定數(shù)據(jù)庫、角色或者會(huì)話設(shè)置該參數(shù)。如果一個(gè)參數(shù)在多個(gè)級別上都被設(shè)置,最細(xì)粒度級別上的設(shè)置會(huì)優(yōu)先。例如,會(huì)話覆蓋角色,角色覆蓋數(shù)據(jù)庫,而數(shù)據(jù)庫覆蓋系統(tǒng)。
設(shè)置系統(tǒng)級別參數(shù)
????????master的postgresql.conf文件中的參數(shù)設(shè)置是系統(tǒng)范圍默認(rèn)的。 要設(shè)置一個(gè)master參數(shù):編輯$MASTER_DATA_DIRECTORY/postgresql.conf文件。找到要設(shè)置的參數(shù),取消它的注釋(移除前面的#字符),并且輸入想要的值。保存并且關(guān)閉該文件。
????????對于不需要重新啟動(dòng)服務(wù)器的session參數(shù),按如下上傳postgresql.conf的改變:
$ gpstop -u
????????對于要求服務(wù)器重啟的參數(shù)更改,按如下重啟數(shù)據(jù)庫: ?
$ gpstop -r
?設(shè)置數(shù)據(jù)庫級別參數(shù)
????????使用ALTER DATABASE在數(shù)據(jù)庫級別設(shè)置參數(shù),當(dāng)用戶在數(shù)據(jù)庫級別設(shè)置一個(gè)會(huì)話參數(shù)時(shí),每一個(gè)連接到該數(shù)據(jù)庫的會(huì)話都使用該參數(shù)設(shè)置。 數(shù)據(jù)庫級別的設(shè)置覆蓋系統(tǒng)級別的設(shè)置。例如:
=# ALTER DATABASE mydatabase SET search_path TO myschema;
?設(shè)置角色級別參數(shù)
????????使用ALTER ROLE在角色級別設(shè)置參數(shù),當(dāng)用戶在角色級別設(shè)置一個(gè)會(huì)話參數(shù)時(shí),每一個(gè)由該角色啟動(dòng)的會(huì)話都使用該參數(shù)設(shè)置。角色級別的設(shè)置覆蓋數(shù)據(jù)庫級別的設(shè)置。例如:
=# ALTER ROLE bob SET search_path TO bobschema;
?設(shè)置會(huì)話級別參數(shù)?
????????任何會(huì)話參數(shù)都可以在一個(gè)活動(dòng)數(shù)據(jù)庫會(huì)話中用SET命令設(shè)置。例如:
=# SET statement_mem TO '200MB';
????????該參數(shù)設(shè)置重置參數(shù)值。例如:
=# RESET statement_mem;
查看服務(wù)器配置參數(shù)設(shè)置
????????SHOW命令允許用戶查看當(dāng)前的服務(wù)器配置參數(shù)設(shè)置。例如,要查看所有參數(shù)的設(shè)置: 文章來源:http://www.zghlxwxcb.cn/news/detail-704037.html
$ psql -c 'SHOW ALL;'
????????SHOW只列出master實(shí)例的設(shè)置。要查看整個(gè)系統(tǒng)中一個(gè)特定參數(shù)的值,使用gpconfig工具。例如:文章來源地址http://www.zghlxwxcb.cn/news/detail-704037.html
$ gpconfig --show max_connections
到了這里,關(guān)于人大金倉分析型數(shù)據(jù)庫配置數(shù)據(jù)庫參數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!