热备下的两台机器如何才能互相切换并保证数据一致性?
时间:2010-12-17
来源:互联网
大家好,事情是这样的:
用8.4.5做热备,有A、B两台机器。A开启归档模式,B则作为standby。
A、B之间完成一次基础备份后,B定期从A上拿取A产生的WAL日志,并且是拿到
一个日志文件就合并,接着继续等待下一个文件的到来再合并这些数据,也就是用
WAL做增量备份。
一段时间后,我手工正常停止了A机的postgresql服务(service postgresql stop),
然后把其产生的最后一个WAL日志文件复制到B机。B机合并完这最后一个WAL文件后结束standby,
成为正常服务状态,经查数据也都OK。至此一次热备恢复成功完成。
但我想接着这么干,B机的pg还是以归档模式起来,然后把B机产生的WAL日志文件再拷到
A机上,让A机变成standby模式,每次从B那儿增量备份数据。我尝试着这么干了,
但A机postgresql无法从B机复制来的WAL文件中恢复,报checkpoint错误。
发现B机产生的WAL文件名字和之前不一样,之前是形如:
000001000000000000
000001000000000001
000001000000000002
000001000000000003
000001000000000004
000001000000000005
B机则是:
000002000000000006
000002000000000007
我就是把B机上的000002000000000006和000002000000000007拷到A机让A从中
恢复。
请教大家能这么干吗?需要对这些WAL文件作什么额外处理呢?
用8.4.5做热备,有A、B两台机器。A开启归档模式,B则作为standby。
A、B之间完成一次基础备份后,B定期从A上拿取A产生的WAL日志,并且是拿到
一个日志文件就合并,接着继续等待下一个文件的到来再合并这些数据,也就是用
WAL做增量备份。
一段时间后,我手工正常停止了A机的postgresql服务(service postgresql stop),
然后把其产生的最后一个WAL日志文件复制到B机。B机合并完这最后一个WAL文件后结束standby,
成为正常服务状态,经查数据也都OK。至此一次热备恢复成功完成。
但我想接着这么干,B机的pg还是以归档模式起来,然后把B机产生的WAL日志文件再拷到
A机上,让A机变成standby模式,每次从B那儿增量备份数据。我尝试着这么干了,
但A机postgresql无法从B机复制来的WAL文件中恢复,报checkpoint错误。
发现B机产生的WAL文件名字和之前不一样,之前是形如:
000001000000000000
000001000000000001
000001000000000002
000001000000000003
000001000000000004
000001000000000005
B机则是:
000002000000000006
000002000000000007
我就是把B机上的000002000000000006和000002000000000007拷到A机让A从中
恢复。
请教大家能这么干吗?需要对这些WAL文件作什么额外处理呢?
作者: vvoody 发布时间: 2010-12-17
没有做过PG的双机。高手出来吧。
作者: renxiao2003 发布时间: 2010-12-17
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28