マルチソースのコピーmysql5.7の設定

3台のホストがあると仮定し、二つの主要なライブラリはMASTER1、MASTER2、ライブラリーからの奴隷でした

図1は、それぞれ、メインバイナリログデータベースに開き、構成の異なるサーバID。

     [mysqldを】

     ログ・ビン= mysqlのビン

     サーバID = 1

2は、それぞれ2つの主要な図書館の利用者のコピーを作成するに専念し、コピーに許可を与えます。

     CREATE USER 'REPL' @ '%' IDENTIFIED BY ' パスワードを ';

     GRANT REPLICATION SLAVE ON *。* TO 'REPL' @ '%';

図3に示すように、それぞれ、二つの主なデータベースクエリの実行状態、及び記録状態の問い合わせで、

     SHOWの MASTERの STATUS;

     検索結果FILE2、POS2保存FILE1、POS1、MASTER2としてそのMASTER1クエリの結果を想定し、ファイル、位置を記録しました。

4、ライブラリーからの設定

    1)2つの変数は、表の下方に設けられている。
             SETグローバルmaster_info_repository = 'TABLE';
             SETグローバルrelay_log_info_repository = 'TABLE'。

    2)、以下の設定は、ステートメントを実行されます。

            CHANGE MASTER TO

       MASTER_HOST =」MASTER1

       MASTER_USER = ' REPL '

       MASTER_PASSWORD = ' パスワード '、

       MASTER_LOG_FILE = ' FILE1 '

       MASTER_LOG_POS = rpos1チャネルのための'MASTER1' ;


       CHANGE MASTER TO

       MASTER_HOST =」MASTER2

       MASTER_USER = ' REPL '

       MASTER_PASSWORD = ' パスワード '、

       MASTER_LOG_FILE = ' ファイル2 '、

       MASTER_LOG_POS = rpos2チャネルのための「マスター2」



3)ライブラリからコピーを開始します

        同時に起動します。

        スレーブを起動します。

        また、それぞれ開始することができます:

        チャンネル「MASTER1」のスレーブを起動します。

        チャンネル「マスター2」のスレーブを起動します。

        同時に、停止時:

        スレーブを停止します。

        また、それぞれ停止することができます:

        チャンネル「MASTER1」のスレーブを停止します。

        チャンネル「マスター2」のスレーブを停止します。

注:プロセスがマスタ1をコピーすることによって、仮想スレーブを作成するように、ケースのコピーを仮想マシン、仮想マシンによって操作された場合、

そして、それは、ライブラリから次の操作を実行する必要があるライブラリーからのブート、することはできませんが発生する可能性があります:

図1は、ライブラリーから、次の表を空に:

     slave_master_info
     slave_relay_log_info
     slave_worker_info

     innodb_index_statsの
     innodb_table_stats

2.停止のmysqldサービス、データディレクトリにauto.cnf削除ファイルは、mysqldのサービスを再起動します。

3、ライブラリから設定するには、続けています。

おすすめ

転載: blog.51cto.com/3823536/2456998