除了已經提及的 postgresql.conf
檔案外,PostgreSQL 還使用了另外兩個手動編輯的設定檔,用於控制客戶端驗證(它們的用法在第 20 章中討論)。 預設情況下,所有三個設定檔都儲存在資料庫叢集的資料目錄中。 本節中描述的參數允許將設定檔放置在其他位置。(這樣做可以簡化管理。 特別是,當設定檔被分開保存時,通常更容易確保它們得到適當的備份。)
data_directory
(string
) #指定用於資料儲存的目錄。 這個參數只能在伺服器啟動時設定。
config_file
(string
) #指定主伺服器設定檔(通常稱為 postgresql.conf
)。 這個參數只能在 postgres
命令列上設定。
hba_file
(string
) #指定基於主機的驗證的設定檔(通常稱為 pg_hba.conf
)。 這個參數只能在伺服器啟動時設定。
ident_file
(string
) #指定使用者名稱映射的設定檔(通常稱為 pg_ident.conf
)。 這個參數只能在伺服器啟動時設定。 另請參閱第 20.2 節。
external_pid_file
(string
) #指定伺服器應建立的額外程序 ID (PID) 檔案的名稱,供伺服器管理程式使用。 這個參數只能在伺服器啟動時設定。
在預設安裝中,以上參數都沒有被明確設定。 相反,資料目錄由 -D
命令列選項或 PGDATA
環境變數指定,並且設定檔都可以在資料目錄中找到。
如果您希望將設定檔保存在資料目錄以外的位置,則 postgres
-D
命令列選項或 PGDATA
環境變數必須指向包含設定檔的目錄,並且必須在 postgresql.conf
(或命令列)中設定 data_directory
參數,以顯示資料目錄的實際位置。 請注意,對於資料目錄的位置,data_directory
會覆蓋 -D
和 PGDATA
,但不會覆蓋設定檔的位置。
如果您願意,可以使用參數 config_file
、hba_file
和/或 ident_file
單獨指定設定檔名稱和位置。 config_file
只能在 postgres
命令列上指定,但其他參數可以在主設定檔中設定。 如果所有三個參數加上 data_directory
都被明確設定,則不需要指定 -D
或 PGDATA
。
當設定這些參數中的任何一個時,相對路徑將根據 postgres
啟動所在的目錄進行解釋。
如果您在文件中發現任何不正確、與特定功能的使用體驗不符或需要進一步說明的內容,請使用此表單報告文件問題。