postgresql生产环境数据库迁移

因为现有的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#h2-url-4

https://blog.csdn.net/qq_36408250/article/details/80652518


猜你喜欢

转载自blog.51cto.com/xiaoxiaozhou/2339470