因为现有的pg环境负载过高,需要把现在的数据库迁移到新的环境中
如果数据量不大可以使用方法一
方法一:
pgsql迁移数据库到不同网段新的库,新的数据库环境主从高可用环境已经配置完成。
首先备份老的库
$ pg_dump -U peimsmdata -d peimsm > peimsm.sql
压缩
$ tar -zcf peimsm.tar.gz peimsm.sql
把文件传到新的环境中,解压缩
$ tar -xzf peimsm.tar.gz
导入数据库
$ psql -U peimsmdata -d peimsm < peimsm.sql
但是实际上数据量有五六千万,五十多GB,使用上边的方法会很耗时,所以使用下面的方法
方法二:
新老环境在一个网段中
首先停止老的数据库相应的业务,然后停止数据库服务和keepalived服务
然后在主库环境中编译postgresql
使用下面命令清理pg_archive目录下的最新文件之前的归档文件
$ pg_archivecleanup ./ filename
把老环境中的/data/pg_data目录下的所有文件传送到新的环境中的/data/pg_data目录下,修改配置文件,启动服务
主从同步数据
...
依照主从配置的文档做配置等
参考
https://help.aliyun.com/document_detail/26157.html#h3-url-4
https://blog.csdn.net/qq_36408250/article/details/80652518