Mysql 尝试将表复制到从属服务器上的多个数据库

Mysql 尝试将表复制到从属服务器上的多个数据库,mysql,Mysql,我在主数据库中有一个表,我想将它复制到一个从服务器上的多个数据库中。像这样: masterDB.tableA -> slaveDB1.tableA masterDB.tableA -> slaveDB2.tableA slaveDB1和slaveDB2位于同一个从属服务器上。这可能吗 我可以让slaveDB1的复制正常工作,但它忽略了my.cnf中针对slaveDB2的命令: replicate-rewrite-db="masterDB->slaveDB1" replicat

我在主数据库中有一个表,我想将它复制到一个从服务器上的多个数据库中。像这样:

masterDB.tableA -> slaveDB1.tableA
masterDB.tableA -> slaveDB2.tableA
slaveDB1和slaveDB2位于同一个从属服务器上。这可能吗

我可以让slaveDB1的复制正常工作,但它忽略了my.cnf中针对slaveDB2的命令:

replicate-rewrite-db="masterDB->slaveDB1"
replicate-rewrite-db="masterDB->slaveDB2"

replicate-wild-do-table=slaveDB1.tableA%
replicate-wild-do-table=slaveDB2.tableA%
我是否遗漏了一些内容,或者这不能通过复制来完成?

来自

要指定多次重写,请多次使用此选项。服务器使用第一个具有匹配的from_name值的


这表明它不起作用,因为它只考虑两个复制重写数据库选项中的第一个(这是您看到的行为)。

我所知道的实现这一点的唯一方法是在从属服务器上运行多个mysqld实例,然后为每个实例设置一个复制重写数据库


我也看到了,这就是我被卡住的地方。谢谢-我认为你和@Aknosis都是对的。第二个奴隶实例或半身像@jason_mc99我很想知道你为什么要看这种设置。也许我们可以建议一个更好的解决方案?同样,你需要确保你接受答案并投票。也许,如果两个答案对你都有同样的帮助,你可以接受其中一个,然后再投另一个!谢谢我不能投票,因为我显然没有代表,但我会接受答案!我想做的是将一个主要是静态信息的主数据库推送到特定于我组织中多个公司的数据库中。理想情况下,我只需更改“主”数据库,然后将其显示在每个公司的单个数据库中。数据本质上是静态的,因此级联删除和孤立记录不受关注。(我们尝试这样做的原因是为了减少对外部数据库中外键的依赖,从而简化MVC代码。)@jason_mc99感谢您的接受!当你有足够的代表时,一定要回来投票支持Aknosis。就你的问题而言,如果你在一台机器上有超过一小部分不同的数据库,那么复制将是很棘手的。如果不了解应用程序的规模,很难提出解决方案。你看过了吗:所有应用程序都有一个静态模式(每个应用程序都有自己的专有模式);NoSQL选项;某种版本控制/触发解决方案;某种类型的构建/自动部署解决方案?现在,我们正在考虑通过cron作业更新数据库副本-这只是一个麻烦。NoSQL选项听起来很有趣-有什么想法吗?一旦我得到代表,我一定会回来投票@Asknosis。