2012-02-10 9 views
0

私は学生だと私はリアルタイムで表Aと表BMySQLのレプリケーションbidirectionnal

テーブルA(article_idに、article_contentの)データベース内

テーブルB(のエントリを複製したいと思いますid、article)をデータベースB

いつも同じエントリーにしたいと思っています。 テーブルAに新しいエントリがある場合、そのテーブルBにリアルタイムで(レイテンシは低い)テーブルBに追加したいのですが、フィールドが同じでないためすぐに実行できません。

だから、データベースA

テーブルABに複製データベースBにおけるデータベースBのテーブルABに複製データベースA内の各データベース

表A 表Bの両方のテーブルを複製について考え、次に追加しますテーブルABにテーブルAとテーブルBを正しく変更させるトリガーがいくつかあります。

良い解決法ですか?ありがとう

+0

....考えています。あるいは、一方のテーブルを他方のテーブルのビューに置き換えることもできます。あなたはどのMySQLバージョンを実行していて、同じサーバー上の両方のデータベースですか?テーブル構造は何ですか? – nnichols

+0

mysql 5.0.4 +であり、データベースは自動的に同じサーバーにはありません。 – adieuuu

+0

私はあなたに最高のアドバイスを得るためにあなたの設定をさらに説明する必要があると思います。レプリケーションは私にとって過度のように聞こえる。トラフィックレベルは何ですか?データベース/テーブル構造とは何ですか?フェデレーテッド・テーブルを使用できますか(FEDERATEDが使用可能かどうかを確認するには、「SHOW ENGINES」を使用します)。 – nnichols

答えて

0

私はマスタに複製してマスタを複製するためのスレーブを設定することをお勧めします。さもなければあなたはキー/外部キーを管理する時間の地獄を持っています。あなたが提案されているルートを下る場合は、スタートのためまあ

+0

ありがとうございます。私はレプリケーションatmの専門家ではありません。私はポストを編集したかもしれません。おそらく今理解しやすいです。 – adieuuu

+0

事は、2つの異なるアプリケーションがテーブルAとBで書いていることです... – adieuuu

0

テーブルはそのレプリケーションではないです異なっている場合....

は、心のトリガーでベアリングは、トランザクションの一部です。

DatabaseAは、テーブルAとTableBCopy DatabaseBはテーブルBとTableACopy

だからTableAのがTableACopyに複製し、テーブルBがに複製TableBのへの変更をトリガするTableACopyに複製TableAのを、修正TableBCopyからTableBCopy トリガーに複製していますTableBCopy .... TableACopyから しばらくトリガーは良いアイデアのような上記の音のビットTableACopyに複製TableAのへの変更をトリガーTableBCopyに複製テーブルB、...

を修正しますか?

あなたが正しいことを得て、再帰的に終わらないとしても、実装の近くで大声で盗聴され、それは大きなものになります。

@Ianウッドが示唆したように、私は、彼らは両方とも同じ表に書いているように、私はアプリケーションの1つを変更示唆している

関連する問題