解決Greenplum數據庫Master節點產生日誌過多問題

1.原因分析

greenplum集羣master節點產生日誌過大原因:greenplum數據庫,由於所有的用戶請求,都要經過master節點,並且默認情況下master節點會把CREATE,ALTER,DROP ,INSERT,UPDATE,DELETE,TRUNCATE和COPY FROM等操作詳細日誌信息記錄在$MASTER_DATA_DIRECTORY/pg_log目錄下,並且日誌級別也較低,對於greenplum併發量比較大的情況下,會產生非常大的日誌信息,浪費系統資源。

2.解決方法

修改master節點配置信息,在$MASTER_DATA_DIRECTORY/postgresql.conf中:

#控制記錄那些SQL語句應該記錄,ddl表示只記錄CREATE,ALTER,和 DROP等命令,默認爲all,表示insert、update、delete、truncate和copy from等都會記錄
log_statement='ddl'
#控制那些消息級別寫入服務器日誌。每個級別包括跟隨它(它之後)的所有級別,級別越靠後,記錄的日誌消息越少。主要包括:DEBUG1、INFO、NOTICE、WARNING、LOG、ERROR、FATAL、PANIC這些級別
log_min_messages='panic'

3.greenplum其它日誌配置說明

  • log_rotation_age:確定單個日誌文件的最長生命週期,在這段時間之後,將創建一個新的日誌文件。設置爲0以禁用基於時間的日誌文件的創建。取值爲任何有效的時間表達式 (數字和單位),默認1d,表示一天。

  • log_rotation_size:確定單個日誌文件的最大大小。當文件達到指定大小後將創建一個新的日誌文件。設置爲0以禁用基於大小的新的日誌文件的創建。該值默認爲0。

  • log_statement_stats:對於每個查詢,將查詢解析器,計劃程序和執行程序的總體性能統計信息寫入服務器日誌。該值爲Boolean類型,默認爲off,可以用on開啓。

  • log_truncate_on_rotation:清空(覆蓋)。如果文件已經存在,則會覆蓋,默認off,on可以開啓。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章