Postgresql

如何在 ubuntu/debian/linux 上檢查 pg_hba.conf 和其他 postgresql conf 文件的語法?

  • October 5, 2016

很多時候,postgresql 服務在一些配置更改後無法重啟。

是否有任何命令行工具允許在重新載入/重新啟動服務之前檢查pg_hba.conf其他 pg*.conf文件的語法,或者在任何配置更改之後甚至更好?

你可以執行:

postgres=# SELECT pg_reload_conf();
pg_reload_conf
----------------
t
(1 row)

postgres=# 

..從內部psql。或過程kill -HUPpostmaster

任何配置驗證錯誤都會被放入 Postgres 日誌文件,並且不會重新載入配置。範例日誌:

2016-10-05 10:31:57 BST LOG:  received SIGHUP, reloading configuration files
2016-10-05 10:31:57 BST LOG:  invalid connection type "awdawdawdawd"
2016-10-05 10:31:57 BST CONTEXT:  line 1 of configuration file "/etc/postgresql/9.3/main/pg_hba.conf"
2016-10-05 10:31:57 BST WARNING:  pg_hba.conf not reloaded

我不知道有一個工具只檢查配置的有效性,但是這裡的 pgsql-hackers 郵件列表中有一個執行緒討論了一個驗證器的提議。

引用自:https://dba.stackexchange.com/questions/151456