首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL数据库复制

MySQL数据库复制
EN

Stack Overflow用户
提问于 2009-04-27 12:00:54
回答 7查看 4.7K关注 0票数 4

这是一种情况:

  1. 我有一个带有数据库的MySQL服务器,我们称它为MySQL这个数据库是各种数据库中几个表的合并。
  2. 我有另一台MySQL服务器,与原始数据库一起,这些数据库是生产数据库,每天都在更新。
  3. 该公司希望将生产数据库中每个表上的每个更新/插入/删除复制到consolidateddb.中的相应表中。

复制能做到这一点吗?我知道复制是在数据库上进行的,而不是在属于一个目标数据库的不同数据库的表上进行的。

我希望我的解释是清楚的。谢谢。

编辑:会将每个数据库中所有表的递归副本放到单个从工作中吗?还是一个丑陋的解决方案?

EN

回答 7

Stack Overflow用户

发布于 2009-04-30 19:54:54

为了澄清一些问题,让我们根据当前的mysql实践列出相应的内容。数据库是数据库服务器。架构是数据库实例。数据库服务器可以有多个架构。表存在于架构中。

如果希望复制在主/生产服务器上定义的架构或表,则复制将对您有所帮助。复制的工作方式是将在主服务器上运行的所有sql语句的二进制日志发送给从属程序,而从节点则忠实地运行它们,就好像它们是在自身上顺序运行一样。

您可以选择复制所有数据,也可以选择一些模式,甚至部分表。

无法从不同架构中选择表并将其复制到一个架构中,表属于特定架构。

顺便说一句重要的注意事项。复制服务器不能是多个主服务器的从服务器。您可以使用联邦表来模拟这种情况,但这不会将数据复制到合并服务器,只需将来自不同服务器的数据显示在一台服务器上。

复制的好处是您的合并服务器几乎总是有更新的数据。

票数 12
EN

Stack Overflow用户

发布于 2009-05-06 17:07:25

您可以从每个主服务器获取二进制日志,用mysqlbinlog解析它们,然后将其运行到统一机器中。

非常类似的事情:

代码语言:javascript
复制
mysqlbinlog [binary log files] | mysql -h consolidated

您需要某种简单的应用程序(如果需要,可以用bash完成)来包装逻辑。

票数 2
EN

Stack Overflow用户

发布于 2009-04-27 12:21:23

查看一下将不同的数据库复制到不同的奴隶,看看它在任何方面是否对你有帮助。

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

https://stackoverflow.com/questions/793196

复制
相关文章

相似问题

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