[技术干货] PostgreSQL 12.3流复制断点恢复

[复制链接]
乐维 发表于 2021-1-29 10:20:00 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
1. 问题描述:
PostgreSQL节点采用异步流复制对数据进行同步,由于需要测试一些东西,对主库设备进行了频繁的重启操作,结果导致流复制中断,且无法自行恢复,主、备库开始产生数据差。
2. 解决思路:
删除备库数据目录下所有文件,使用PostgreSQL自带的备份工具pg_basebackup,把主库数据库目录下所有文件拉取到备库数据目录下,然后直接启动备库服务即可。
3. 处理过程:
4.1.查看主库状态,保证主库服务处于运行状态;
字符f表示该节点为主库,字符t表示备库,流复制中断后,角色并不会被影响;
11.png
4.2.关闭备库PostgreSQL服务,然后删除备库数据目录下所有文件
12.png
4.3.同步主库数据到本地数据目录下(流复制用户:repl,数据目录:/data/postgresql),同步时间根据数据量大小而定,我这个地方有200~300GB数据,一个小时就同步完了。
13.png
4.4.更改数据目录权限为700,直接启动备库PostgreSQL服务
14.png
4.5.登录到主库,查看流复制状态,发现数据同步已重新建立;
15.png
4.6.验证,在主库创建一个test_sync库,看是否会同步到备库;
16.png
4.7.登录备库后,发现新建的test_sync库已经同步过来,说明数据同步已恢复。
17.png

技术交流欢迎加入Q群:177428068





上一篇:数据库pgpool-II 4.1.4 高可用集群之VIP漂移
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子327

发布主题
最新发布

乐维社区

微信公众号

版权所有 © 2016-2021 九一乐维丨粤ICP备17007026号