mysql5.7 Replicationについて(2)
今回は非同期レプリケーションについて実際にやってみた。
masterの設定
- my.cnfを下記の通り設定し、サーバRestart
log-bin=mysql-bin # バイナリログのファイル名prefix server-id=1 # MySQLサーバ固有のID(1 〜 (2^32)−1)
[centos@ip-192-168-120-242 ~]$ mysql -u root -p Enter password: ... mysql> use mysql mysql> create user 'repl'@'192.168.120.%' IDENTIFIED BY 'xxxx'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.120.%'; Query OK, 0 rows affected (0.00 sec) mysql> select Host,User from user; +---------------+-----------+ | Host | User | +---------------+-----------+ | 192.168.120.% | repl | <===ユーザが作成されている | localhost | mysql.sys | | localhost | root | +---------------+-----------+ mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 325 | | | | <===positionを確認 +------------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec)
slave側での設定
- my.cnfを下記の通り設定し、MySQLをRestart
server-id=2
[centos@ip-192-168-120-49 ~]$ mysql -u root -p Enter password: ... mysql> CHANGE MASTER TO -> MASTER_HOST='192.168.120.242', -> MASTER_USER='repl', -> MASTER_PASSWORD='xxxx', -> MASTER_LOG_FILE='mysql-bin.00001', -> MASTER_LOG_POS=325; mysql> exit Bye [centos@ip-192-168-120-49 ~]$ sudo systemctl restart mysqld.service