マスターとスレーブのMySQL同期
ソフトウェア情報:
osタイプ: CentOS 6.3
バージョン:mysql-5.5.28
マスターIP: 192.168.137.27
スレーブIP 192.168.137.28
mysqlをデプロイする方法,httpsを参照できます://www.roamway.com/55.html
構成ファイルの編集.
vim /etc/my.cnf
警告:基本的な機能のデモのみを行います。他の機能を追加する必要がある場合があります。
このクラスターを本番環境に使用する場合.
[mysqld] mster構成の一部
[mysqld]
socket = / usr / local / mysql / data / mysql.sock
default-storage-engine = MyISAM
server-id = 27
log-bin = mysqlmaster-bin.log
sync_binlog = 1
lower_case_table_names = 1
log_bin_trust_function_creators = 1
[mysqld] スレーブ構成の一部
[mysqld]
socket = / usr / local / mysql / data / mysql.sock
default-storage-engine = MyISAM
server-id = 28
log-bin = mysqlslave-bin.log
sync_binlog = 1
l0wer_case_table_names = 1
l0g_bin_trust_function_creators = 1
マスターとスレーブの起動スクリプトを編集します
vim /etc/init.d/mysqld
の値を変更します “basedir =” そして “datadir =”
mysqlの初期化
/usr / local / mysql / scripts / mysql_install_db \
–basedIr = / usr / local / mysql \
–datadir = / usr / local / mysql / data \
–user = mysql
マスターとスレーブを開始します, マスターにログインし、同期に使用されるアカウントを作成します.
[root @ mysqlmaster〜]#/usr / local / mysql / bin mysql -uroot -p
mysql> GRANT REPLICATON SLAVE ON *.* TO‘slave ’@’ 192.168.137.28’ 「123456」で識別;
クエリOK, 0 影響を受ける行 (0.34秒)
マスターのステータスを確認し、ファイルフィールドと位置の値を書き留めます,
この情報は、このクラスターを構成するときに使用されます.
mysql> マスターステータスを表示;
+————————+———-+————–+——————+——————-+
| ファイル | ポジション | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+————————+———-+————–+——————+——————-+
| mysqlmaster-bin.000004 | 963| | | |
+————————+———-+————–+——————+——————-+
1 セット内の行 (0.00 秒)
スレーブを起動してログインします ,次のコマンドを実行します.
masterをmaster_host = ’192.168.137.27に変更します′,master_user = ’slave’,master_password = ’123456′,
master_log_file = ’mysqlmaster-bin.00004′,master_log_pos = 963;
そして、masterから照会されたmaster_log-binとmaster_log_posの値.
スレーブで重複スレッドを開始します.
mysql> スレーブを開始;
クエリOK, 0 影響を受ける行 (0.02 秒)
スレーブの状態を確認する
mysql> スレーブステータスを表示
Slave_IO_RunningとSlave_SQL_Runningの両方のステータスがyesの場合,それは、
マスターからスレーブへの同期が成功しました, 次の図に示すように.
同期メカニズムが機能するかどうかを確認します .
マスター操作:
ローミングウェイを使用する;
テーブルを表示;
テーブルtest2を作成します(idint主キーauto_increment,名前varchar(20))auto_increment = 1;
test2値に挿入します(1,「ロームウェイ同期テスト」);
テーブルを表示;
選択する * test2から;
スレーブ操作:
ローミングウェイを使用する;
テーブルを表示;
選択する * test2から;
これは、マスターからスレーブへのデータ同期が有効になることを意味します