mysqlのマスタースレーブ同期ノート

マスター構成

スレーブ構成

マスタースレーブの実装プロセス:

3つのスレッド(マスタに、スレーブ2番目)で実現MySQLの同期

1:スレーブIO_THREADがマスタへの接続を作成し、マスタが要求バイナリログを送信します。

2:バイナリログを作成したマスターは、スレッドダンプ(スレッドが表示PROCESSLISTによって見ることができる)IO_THREADスレーブへのコンテンツのログを送信します

3:IO_THREAD文BINLOGダンプスレッドがログ格納リレー(リレーログ)内に、スレーブでマスターを送る読んで

4:リレーログを読み取り、スレーブSQL_THREADを起動し、SQLを実行するデータ同期が完了しました。


注意:

同期前MySQL4.0.2において2つだけのスレッド(マスタおよび各スレーブA)、すなわちスレーブリレーログを使用しません

2つ以上のスレーブ場合は、マスタスレーブは、各接続のための2つのスレッドを必要とするスレッドを作成し、各スレーブは、常に


===================== ================================================== ======================


注意事項:

1:マスターバージョンは、MySQLから一貫してします

2:からの一貫性のマスタデータを確実にするために、前の同期を有​​効にします

3:スレーブマスタにコピーされたデータのうちの一つの方法は、実際にコマンドを実行します

MASTER FROM mysqlの>負荷データ

MASTERコマンドからいくつかの制限負荷データ:
A.MySQLバージョン> = 4.0.0
唯一のMyISAMテーブルタイプBをサポート

C.slaveユーザーはSUPER権限を持っている必要があります

D.masterは、ユーザーがRELOADとSUPER権限を持っている必要がありますコピー
E.LOADデータ、マスターのグローバルリードロックを使用している場合
ロックを使用する場合F.勧告は、データをマスター以下の時間を読み取ることができるように

4:デュアルアクティブのMySQLは、同時に2つのマスタとスレーブとして構成されています

5:binlogのログサーバを爆発防止のため、自動的に削除期限切れbinlogの推奨構成で

コマンドを使用した構成

MySQLの>グローバルexpire_logs_days = 8を設定します。

設定ファイルmy.cnfファイルを使用します

expire_logs_days = 8

設定を確認してください。

mysqlの>「expire_logs_days」のような変数を表示。


================================================== ===========================================


プライマリサーバ上の関連コマンド:

MySQLの>ショーのマスターステータス\ G

MySQLは>マスター状態を表示します。

MySQLの>スレーブホストを示し;

MySQLの>ショーログ。

MySQLの> binlogのイベントを表示。

MySQLの>バイナリログを表示します。

mysqlの>「LOG_NAME」にパージログ。

MySQLの>パージログ「日」の前に。

MySQLの>リセットマスター; //古いバージョンのフラッシュマスター

MySQLの> SQL_LOG_BIN = / xxxに設定します。


サーバー上の関連するコマンドから:

MySQLの>スレーブを開始。

MySQLの>スレーブストップ。

MySQLの> SLAVE STOP IO_THREAD; //ローカルマスタに書き込まれたセグメントをログに記録するには、このスレッド

MySQLの> SLAVE IO_THREADを開始します。

MySQLの> SLAVE STOP SQL_THREADは; //このスレッドは、データベースへのローカルログに書き込む方法

MySQLの> SLAVE SQL_THREADを開始します。

MySQLの>スレーブをリセットします。

MySQLの> SET GLOBAL SQL_SLAVE_SKIP_COUNTER。

MySQLの>マスターからの負荷データ;

MySQLの>ショースレーブステータス; // SUPER、複製CLIENT

MySQLの> MASTER_HOSTに変更MASTER = 127.0.0.1、= 3306 MASTER_PORT、MASTER_USER =ユーザー、PWD MASTER_PASSWORD =; //マスター動的に変化する情報

MySQLの> PURGE [「日」の前に] MASTER、マスター端末削除ログが同期していました

mysqlの>「ablelee.000003」にバイナリログをパージ; //はablelee.000003前にバイナリログを削除し、ablelee.000003が含まれていません

MySQLの> PURGE MASTERのログ 'のmysql-bin.010' に。

MySQLの> PURGEマスターがログインする前に「2008年6月22日13時00分00秒」;


PURGEコマンドの構文

PURGE {MASTER | 'LOG_NAME' TO BINARY} LOGS

PURGE {MASTER | '日付' より前のBINARY} LOGS

おすすめ

転載: www.cnblogs.com/lonuve/p/11015851.html