正式には、クロスバージョン レプリケーションは最大で 1 つのメジャー バージョンの違いでサポートされます。つまり、4.1 マスターから 5.0 スレーブはサポートされていますが、4.0 マスターから 5.0 スレーブはサポートされていません。動作しないのではなく、テストを行っていないため、動作を保証する方法がありません。http://dev.mysql.com/doc/refman/5.0/en/replication-compatibility.html
を参照してください。
少なくとも制限付きで、4.0 から 5.0 に複製することは可能です。Linux VM でこのような構成をセットアップしてテストしましたが、広範囲のクエリはテストしていません。単一のCREATE TABLE test.foo
. したがって、少なくとも最小限のレプリケーション構成が機能します。スレーブは認証を行い、バイナリ ログを受信し、ステートメントの実行を開始します。
ただし、クエリにはいくつかの種類の下位互換性の問題があります。軽減できるもの:
これは必ずしも包括的なリストではなく、私がすぐに思いついたものです。
また、アップグレードのマニュアル ページを読んで、下位互換性がない他のケースを見つけ、それらがアプリケーションに適用されるかどうかを確認する必要があります。これらのほとんどはまれなケースですが、それらのいずれかがあなたのアプリに当てはまるかどうかはわかりません:
2003 年頃の MySQL を 2005 年頃の MySQL にレプリケートするのはばかげていることは既に理解しており、より新しいバージョンの利点を得られると期待しています。
快適さと燃費を向上させるために、モデル T フォードから VW バグにアップグレードするようなものです。
まだこのホスティング プロバイダーから離れることはできないとおっしゃっていたことは承知していますが、古い MySQL 4.0 バージョンを放棄できない場合、多くの不便が予想されます。