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

时间:2012-04-17 20:21:44

标签: mysql

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

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%

我是否遗漏了某些内容,或者这是不是可以通过复制完成?

2 个答案:

答案 0 :(得分:0)

来自docs

  

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

这表明它不会起作用,因为它只会考虑你的两个replicate-rewrite-db选项中的第一个(这是你所看到的行为)。

答案 1 :(得分:0)

我知道实现此目的的唯一方法是在从属服务器上运行多个mysqld实例,然后为每个实例设置一个replicate-rewrite-db。

http://dev.mysql.com/doc/refman/5.0/en/multiple-servers.html