Postgresql
psql 給出 Invalid data directory 錯誤
我有安裝了ubuntu 18.04 伺服器的 VM 。我已經從 repo安裝了postgres 10 。
預設安裝。我在 postgres.conf 中進行了一些與連接計數相關的更改,並在 pg_hba.conf 中進行了與連接安全相關的更改。
安裝目錄都是預設的,包括數據目錄。
伺服器正在執行。我能夠創建數據庫並從 java 客戶端訪問它們。
但是當我從同一個 VM 啟動 psql 時,它會引發以下錯誤。
Error: Invalid data directory
只是沒有任何參數的 psql 也會給出這個錯誤。
人們在嘗試更改數據目錄時遇到了這個錯誤,而我的情況並非如此。數據目錄是預設目錄,它歸 postgres 使用者所有。
ubuntu@ubuntu:~$ ls -l /var/lib/postgresql/10/ total 4 drwx------ 20 postgres postgres 4096 Jun 12 02:54 main
知道可能是什麼原因,或者我應該在哪裡尋找 psql 客戶端的詳細錯誤?
錯誤:無效的數據目錄
當
pg_wrapper
無法從配置中找出數據目錄時會發生這種情況。pg_wrapper
是 postgres 之上的一層,它可以在基於 debian 的系統上的多個實時 PostgreSQL 實例之間進行切換。由postgresql-client
軟體包安裝,是此類系統上psql
的連結:pg_wrapper
/usr/bin/psql -> ../share/postgresql-common/pg_wrapper
由於您提到稍微修改
postgresql.conf
,請確保您沒有更改裡面的權限/etc/postgresql/
,包括postgresql.conf
. 這看起來是最有可能立即導致上述錯誤的變化。下一個是您的更改在語法上是錯誤的,以一種pg_wrapper
不再能夠解析文件的方式。