30台のDBに一括で同時にレプリケーションを実現【リアルタイムレプリケーションツールDBMoto】


DBMotoではソース(複製元)とターゲット(複製先)で双方向に差分レプリケーションする「シンクロナイゼーション」というレプリケーションモードがありますが、応用して3台以上のデータベースに一括でレプリケーションする「マルチシンクロナイゼーション」という機能があります。


マルチシンクロのイメージ。設定上はソース1とターゲットnとなり、どこかで更新があれば他すべてに同期を取ります。

例えばですが、マスターDBが1台、各支店ごとにDBがあり支店が全部で30ある場合、マスターDBで更新があれば30支店全部にレプリケーションします。また、ある支店で更新があった場合にはソースと他の支店全部にレプリケーションします。

●DBMoto設定イメージ

ソース(マスターDB)がOracle、ターゲット(30支店)がMySQLの場合の設定を行う場合、以下のように設定します。

Oracle <—> MySQL1(シンクロ)
Oracle <—> MySQL2(シンクロ)
・・・
Oracle <—> MySQL30(シンクロ)

上記レプリケーション定義(30個)を設定後、すべてグループ化してまとめます。


metadataの接続設定イメージです。


metadataのレプリケーション設定イメージです。最後にグループ化して1つにまとめています。

レプリケーションを開始したところ。まずはイニシャルリフレッシュで、ソースのレコードがすべてのターゲットにレプリケーションされたところです。

 

イニシャルリフレッシュ完了後、どれかいずれかのレコードを1件更新した場合、他すべてのDBに同期を取っているところです。

関連したトピックス

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください