10.參數(shù)優(yōu)先級

pg參數(shù)優(yōu)先級

pg修改參數(shù)方式很多
配置文件,alter system,命令行,用戶,數(shù)據(jù)庫,所有用戶,會話,事務,函數(shù),表層面進行配置

下面為參數(shù)優(yōu)先級,由低到高
1. postgresql.conf
work_mem = 4MB

2. postgresql.custom.conf
用戶自定義參數(shù)文件,寫在 postgresql.conf 末尾
include_if_exists 'postgresql.custom.conf'
work_mem = 5MB

3. postgresql.auto.conf
alter system set work_mem='6MB'

4. command line options
pg_ctl restart -o "-c work_mem='7MB'"

5. all role
alter role all set work_mem='8MB';

6. database
alter database testdb set work_mem='9MB';

7. role
alter role postgres set work_mem='10MB';

8. session
set work_mem='11MB';

9. 事務
begin;
set local work_mem='12MB';

10. function(函數(shù)內(nèi)有效,函數(shù)結(jié)束,使用其他最高優(yōu)先值)

    create or replace function f_test() returns void as $$  
    declare   
      res text;  
    begin  
      show work_mem into res;  
      raise notice '%', res;                            
    end;  
    $$ language plpgsql strict set work_mem='13MB';     

11. table
autovacuum_enabled


所以,一般來說,pg的參數(shù)配置方式有很多

  • 1.配置文件(postgresql.conf)
  • 2.自定義配置文件(postgresql.custom.conf)
  • 3.alter system(postgresql.auto.conf)
  • 4.命令行(postgres -o, pg_ctl -o)
  • 5.所有用戶(alter role all set)
  • 6.數(shù)據(jù)庫(alter database xxx set)
  • 7.用戶(alter role 用戶名 set)
  • 8.會話(set xxx)
  • 9.事務(set local xxx;)
  • 10.函數(shù)(create or replace function .... set par=val;)
  • 11.表(表級垃圾回收相關(guān)參數(shù))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容