前言

生产环境中随着PostgreSQL数据库表数据的不断产生,数据库目录会不断增长,当磁盘空间不足时会有将PostgreSQL数据库数据目录迁移到其他目录的需求,下面详细介绍目录迁移过程。

一、查询当前数据目录

show data_directory;

。

二、停止数据库

pg_ctl stop

三、压缩数据库的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

五、修改环境变量

# 编辑postgres用户环境文件:
vi /home/postgres/.bash_profile
# 文件内容修改如下:
export PGDATA=/var/pgsql/data
# 配置文件立刻生效:
source /home/postgres/.bash_profile

六、启动数据库

# 启动数据数据库
pg_ctl start

总结

若不设置环境变量也可以使用pg_ctl start -D /var/pgsql/data,通过指定新数据目录方式启动。

更多推荐