1

マスターDBに1つのテーブルがあり、1つのスレーブサーバー上の複数のデータベースに複製したいと考えています。このような:

masterDB.tableA -> slaveDB1.tableA
masterDB.tableA -> slaveDB2.tableA

slaveDB1とslaveDB2は同じスレーブサーバー上にあります。これは可能ですか?

slaveDB1のレプリケーションは問題なく機能しますが、slaveDB2のmy.cnfのコマンドを無視しているためです。

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

replicate-wild-do-table=slaveDB1.tableA%
replicate-wild-do-table=slaveDB2.tableA%

何かが足りないのでしょうか、それともレプリケーションでこれを実行できないのでしょうか。

4

2 に答える 2

0

ドキュメントから

複数の書き換えを指定するには、このオプションを複数回使用します。サーバーは、一致するfrom_name値を持つ最初のものを使用します。

これは、2つのreplicate-rewrite-dbオプション(表示されている動作)の最初のオプションのみが考慮されるため、機能しないことを示しています。

于 2012-04-17T20:32:55.627 に答える
0

これを達成するために私が知っている唯一の方法は、スレーブサーバーで複数のmysqldインスタンスを実行し、それぞれにreplicate-rewrite-dbを設定することです。

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

于 2012-04-17T21:44:29.613 に答える