生產(chǎn)環(huán)境中隨著PostgreSQL數(shù)據(jù)庫表數(shù)據(jù)的不斷產(chǎn)生,數(shù)據(jù)庫目錄會不斷增長,當磁盤空間不足時會有將PostgreSQL數(shù)據(jù)庫數(shù)據(jù)目錄遷移到其他目錄的需求,下面詳細介紹目錄遷移過程。
一、查詢當前數(shù)據(jù)目錄
1 show data_directory;
二、停止數(shù)據(jù)庫
1 pg_ctl stop
三、壓縮數(shù)據(jù)庫的data目錄并拷貝到新目錄解壓
# 壓縮命令:
tar -czvf data.tar.gz data
# 拷貝命令:
cp data.tar.gz /var/pgsql
# 解壓命令:
tar -xzvf data.tar.gz
四、新目錄設置權限
# 修改歸屬用戶命令:
chown -R postgres:postgres /var/pgsql
# 修改文件夾權限命令:
chmod 700 /var/pgsql
五、修改環(huán)境變量
# 編輯postgres用戶環(huán)境文件:
vi /home/postgres/.bash_profile
# 文件內(nèi)容修改如下:
export PGDATA=/var/pgsql/data
# 配置文件立刻生效:
source /home/postgres/.bash_profile
六、啟動數(shù)據(jù)庫
# 啟動數(shù)據(jù)數(shù)據(jù)庫
pg_ctl start
注意:若不設置環(huán)境變量也可以使用pg_ctl start -D /var/pgsql/data,通過指定新數(shù)據(jù)目錄方式啟動。