マスターとスレーブの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 =”

mysql1

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秒)

mysql2

マスターのステータスを確認し、ファイルフィールドと位置の値を書き留めます,

この情報は、このクラスターを構成するときに使用されます.

 

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の場合,それは、

マスターからスレーブへの同期が成功しました, 次の図に示すように.

mysql5

 

同期メカニズムが機能するかどうかを確認します .

マスター操作:

ローミングウェイを使用する;

テーブルを表示;

テーブルtest2を作成します(idint主キーauto_increment,名前varchar(20))auto_increment = 1;

test2値に挿入します(1,「ロームウェイ同期テスト」);

テーブルを表示;

選択する * test2から;

mysql6

スレーブ操作:

ローミングウェイを使用する;

テーブルを表示;

選択する * test2から;

mysql7

これは、マスターからスレーブへのデータ同期が有効になることを意味します

返信を残します