2

レプリケーションを行うサーバーが3つありますが、現在は1つだけがマスターで、他の2つはスレーブです。いずれかのスレーブが更新/挿入された場合に、変更が他のすべてのスレーブとマスターに伝達されるようにしたいと思います。どうすればこれを達成できますか?

私の最善の推測は、それらをすべてマスターにし、互いにスレーブにすることです。これは最適ですか?

4

1 に答える 1

3

これは、標準のmysqlマスター/スレーブレプリケーションでは不可能です。マスターマスターセットアップ(このチュートリアルhttp://www.howtoforge.com/mysql_master_master_replicationを参照)を使用してこれを達成することを試みることができますが、重複キーが作成されないようにするためにかなりの労力が必要です。ただし、これで3つのマスターを処理できるかどうかはわかりません。

正直なところ、バニラMySQLは、このような分散DBに必要なテクノロジーには適していません。

必要なことを実行する可能性のあるMysqlクラスターがあります:http ://www.mysql.com/products/cluster/およびcassandraやmongoDBなどの他のテクノロジー(主にNOSQL)。

于 2012-11-29T18:38:38.020 に答える