MySQLで構築したデータベースサーバの移設を行うため、データをコピーできるツールを探しております。本来ならレプリケーションで対応すべきところなのですが、諸般の事情でレプリケーションを使用することができません。サービスの停止時間を最小にするために次のような手順を考えました。
1.前日のデータベースダンプを新データベースサーバにリストアする
2.サービスをメンテナンスモードに移行し、データ更新を停止する
3.ダンプ移行の差分データを旧データベースサーバから新データベースサーバにコピーする
4.アプリケーションのデータベース参照先を新データベースサーバに切り替えて、メンテナスモードを解除する。
このうち、3の手順で使用する差分データコピーを行えるツールを探しています。これまでに試してみたのは次の2つです。
一つは、NaviCatです。データの同期という機能があったので試していたのですが、エラーが頻発し実用になっていません。エラーになったクエリを出力して確認したところ、データを詰め込んだ巨大なSQLを組み立てていて、MySQLが処理しきれなかったようです(巨大とはいえ、max_allowed_packetよりは小さいです)。試しにエラーになったSQLをテキストエディタで小分けにして新データベースサーバに投入したところ正常に処理できたのですが、これではメンテナンス時間がいくらあっても足りません。
もう一つは、AWS Database Migration Serviceです。しかしこちらは試してみた限りでは常にフルデータをコピーするようで、差分だけを短時間でコピーすることはできませんでした。
これらの他に、MySQLで差分データをコピーできるツールはなにかありませんでしょうか。有償無償は問いません。もしくは、
・NaviCatでクエリを小分けにして出力する設定
・AWS Database Migration Serviceで差分データのみをコピーする方法
でも構いません。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/11/11 10:25