以前,我有过执行以下数据库复制的经验。
(1)我在机器A的1个数据库中有2个表
(2)我在机器A中更新了2个表
(3)计算机A将2个表复制到计算机B。计算机B也将在1个数据库中包含2个表。
现在,我想完成以下工作:
(1)我有表A,在机器A的一个数据库中。
(2)我有表B,在机器B的一个数据库中。
(3)我想将表A和表B复制到机器C。
(4)机器C将在一个数据库中具有表A和表B。
这有没有可能通过数据库复制来实现呢?
发布于 2009-12-26 04:11:38
不幸的是,每台mysql服务器只能有Master。因此,例如,您可以在Machine C上的不同端口上运行两个独立的mysql实例,这两个实例分别从Machine A和Machine B从属,而不是在一台服务器上同时从这两个实例运行。
根据您的情况,这样做可能会让您足够接近一些其他复制技术(比如定期使用mysqldump在C机器上复制一个表)。这将取决于您对从属数据库的需求(表有多大(即,通过非从属方法复制它们的速度有多快),过期是可以接受的,您是否真的需要在一个数据库中使用它们,或者一个服务器是否足够好,等等)。
再想一想,有一种类型的多主机复制是可能的,如果您只想要一个数据库中的数据,而不是真的需要Machine C,那么它可能满足您的需求。在这种情况下,您实际上可以让一个服务器作为表A的主服务器和表B的从属服务器,而另一个服务器是表B的主服务器(如果需要,还可以是表A的从属服务器)。看起来不错的explanation。
发布于 2009-12-22 00:04:03
除非您使用集群,否则多主机复制是不可能的,那么我认为您不能使用您所说的示例,除非两个表实际上是相同的数据,只是将分区分开。
https://stackoverflow.com/questions/1938916
复制相似问题