私はいくつかの小規模なクライアント向けにWebサイトを開発しており、各クライアントの本番サーバーでローカルデータベースを最新の状態に保つことができるようにしたいと考えています。(毎晩更新することを考えています)データベースの多くは数百メガバイトであるため、毎晩完全なダンプを作成して転送するのは過剰だと感じています。
これが私がこれまでに思いついた頭の痛いアイデアです:
サーバー上にダンプを作成し、ローカルマシン上の前夜のダンプとrsyncします。それはファイルの変更されたビットだけを正しく転送する必要がありますか?
サーバー上にダンプを作成し、昨夜のダンプとローカルで差分します。その差だけを転送します。たぶん、元のダンプのmd5に送信することもできるので、同じベースファイルにdiffを適用していることを確認できます。
これらのサーバーの(ほとんど)へのsshアクセスを取得することは可能ですが、クライアントにそのかなり技術的な要求でホスティングプロバイダーに電話をかける必要があります。これは、私がクライアントに依頼する必要がないことです。ftp/phpを介して実装できるソリューションを提案できる場合はボーナスポイント。
編集:
@Jacobの答えは、このスレッドにつながるいくつかのさらなるグーグルを促しました:2つのMySQLデータベースを比較してください
この質問(いくつかの形式で)はかなり一般的なようです。ほとんどのニーズ、したがってほとんどのツールは、データではなくスキーマを最新の状態に保つことに重点を置いているようです。また、ほとんどのツールは商用でGUIのようです。
これまでのところ、最も見栄えの良いオプションは、Percona Toolkitのpt-table-syncのようですが、OSXでセットアップするのは面倒かもしれません。
現在、テスト用にNavicatをダウンロードしています。私はOSXで実行していますが、商用GUIプログラムです。