首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL异步复制(以及可能的数据丢失)

PostgreSQL异步复制(以及可能的数据丢失)
EN

Database Administration用户
提问于 2012-10-27 12:58:12
回答 1查看 684关注 0票数 2

我想把我的注意力集中在Postgres的异步复制上。我阅读文档的方式是,如果主在提交数据之后就会下降,但是在将数据发送给奴隶之前,奴隶将永远不会获得该数据(即使在主服务器重新启动之后)。

据我所知,这与MySQL的异步复制不同,在异步复制中,主服务器恢复同步它的二进制日志(在不丢失任何数据的情况下)。

对我来说有点疯狂,所以我想确定我读的是正确的文档。

我要说的是,我并不是说数据丢失会导致选举其中一个奴隶为新主人。简单地说,数据丢失是因为主服务器在WAL出厂之前就下降了,并且一旦主服务器恢复运行,就不会发货了。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2012-10-27 16:55:31

当主人回来时,任何剩余的WAL必须同步到奴隶,否则奴隶将不能作为一个副本继续下去。到了那个时候,奴隶将重放沃尔,并赶上主人。只要主程序恢复,就不会丢失任何数据。如果失去主程序,您只会丢失尚未复制的数据。

这是由时间线保证的,奴隶只是拒绝重播WAL档案,除非是在正确和不间断的时间顺序。只要你正确地监控你的从节点,你就会看到它们停止前进,并且知道事情是坏的。但是,如果WAL归档设置正确,则不应该发生这种情况。

考虑使用异步流复制和WAL传送,这有助于减少潜在的丢失窗口,如果您确实失去了主程序。

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/27734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档