oracle-完全完整的MySQL数据库复制吗? 有想法吗? 人们在做什么?

Translate

目前,我有两台运行MySQL的Linux服务器,一台位于我旁边的机架上,位于10 Mbit / s的上载管道下(主服务器),另一根位于几英里之外,位于3 Mbit / s的上载管道(镜像)上。

我希望能够连续在两台服务器上复制数据,但是遇到了很多障碍。其中之一是,在MySQL主/从配置下,不时出现一些语句(!),意思是;有些登录到镜像URL的人看不到我知道在主服务器上的数据,反之亦然。假设这种情况每月在有意义的数据块上发生一次,所以我可以忍受它,并假设它是一个“丢失的数据包”问题(即,上帝知道,但我们会赔偿)。

另一个最重要(也是令人讨厌的)重复出现的问题是,由于某种原因,我们在一端进行了重大的上载或更新(或重新启动),并且不得不断绝链接,然后从MASTER加载数据不起作用,我必须在一端手动转储并在另一端上载,如今这是一项艰巨的任务,需要移动约0.5 TB的数据。

是否有用于此的软件?我知道MySQL(“公司”)将其作为非常昂贵的服务(完整的数据库复制)提供。人们在那里做什么?它的结构方式是,我们运行自动故障转移,如果其中一台服务器未启动,则主URL只会解析为另一台服务器。

This question and all comments follow the "Attribution Required."

所有的回答

Translate

Percona的我们提供免费工具来检测主服务器和服务器之间的差异,并通过重新应用最少的更改使它们恢复同步。

来源
Translate

加洲的金门大桥是一个非常好的解决方案,但可能与MySQL复制器一样昂贵。

它基本上是尾随日记,并根据提交的内容应用更改。它们支持双向复制(一项艰巨的任务),以及异构系统之间的复制。

由于它们通过处理日志文件来工作,因此它们可以进行大规模的分布式复制,而不会影响源计算机上的性能。

来源
Translate

我从未见过丢弃的语句,但是有一个错误,其中网络问题可能导致中继日志损坏。确保没有此修复程序不要运行mysql。

在5.0.56、5.1.24和6.0.5变更日志中记录如下:

   Network timeouts between the master and the slave could result
   in corruption of the relay log.

http://bugs.mysql.com/bug.php?id=26489

来源