我正在使用Windows機器上的PostgreSQL燒瓶。我想將默認數據庫位置更改爲項目數據文件夾,在我的項目目錄中,僅用於此項目。我更喜歡我的所有項目文件在一個目錄中。在mongoDb中我寫了一個批處理文件,用一行代碼如何更改postgresql中的默認數據庫位置。
C:\mongodb\bin\mongod.exe --dbpath C:\projects\project XXX\project-data\db --journal
我該怎麼用PostgreSQL做到這一點?
我正在使用Windows機器上的PostgreSQL燒瓶。我想將默認數據庫位置更改爲項目數據文件夾,在我的項目目錄中,僅用於此項目。我更喜歡我的所有項目文件在一個目錄中。在mongoDb中我寫了一個批處理文件,用一行代碼如何更改postgresql中的默認數據庫位置。
C:\mongodb\bin\mongod.exe --dbpath C:\projects\project XXX\project-data\db --journal
我該怎麼用PostgreSQL做到這一點?
更改您的postgresql.conf
http://www.postgresql.org/docs/current/static/runtime-config-file-locations.html
data_directory(串) 指定用於數據存儲的目錄。該參數只能在服務器啓動時設置。
您還可以創建新的表空間
http://www.postgresql.org/docs/current/static/manage-ag-tablespaces.html
CREATE TABLESPACE fastspace LOCATION '/ssd1/postgresql/data';
,並創建新表有
SET default_tablespace = fastspace ;
CREATE TABLE foo(i int);
還有[新數據庫集羣](http://www.postgresql.org/docs/9.5/static/creating-cluster.html)將所有文件保留在一起。 – Abelisto
@Abelisto是的,這聽起來更好。 –
frm-doc 儘管位於PostgreSQL主數據目錄之外,但表空間 是數據庫集羣的組成部分,不能將其視爲數據文件的一小部分集合。它們依賴主數據目錄中包含的元數據 ,因此無法附加到不同的數據庫集羣或單獨備份。同樣,如果丟失表空間 (文件刪除,磁盤故障等),數據庫集羣可能變得不可讀 或無法啓動。將表空間放置在臨時文件系統(如RAM 磁盤)上可能會影響整個羣集的可靠性。 – ISONecroMAn