1. 程式人生 > >Mysql5.7.20主從配置

Mysql5.7.20主從配置

Mysql主從配置筆記,安裝完成兩個Mysql,版本都是5.7.20,
主庫的IP地址為172.17.0.2,從庫的ip地址為172.17.0.3
首先在主庫(172.17.0.2)上執行:

1.建立使用者

GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.*  TO [email protected]172.17.0.3  IDENTIFIED BY 'Wwe123456!';

代表建立一個synchrouser使用者,密碼為Wwe123456!,並且,這個主庫能允許從庫(172.17.0.3)的ip以synchrouser使用者來登陸。

2.配置主庫

在/etc/my.cnf檔案下增加
server-id=2
log_bin=mysql-bin
binlog_format=mixed
我的配置檔案如下這裡寫圖片描述
那個server-id在資料庫配置中必須是唯一的,重啟主庫的mysql

3.配置從庫

在/etc/my.conf下增加server-id=3,我的配置檔案如下
這裡寫圖片描述
重啟從庫的mysql,
在主庫執行sql:show master status;
這裡寫圖片描述
在從庫進行連線主庫執行如下sql:
change master to master_host=’172.17.0.2’, master_user=’synchrouser’, master_password=’Wwe123456!’,master_log_file=’mysql-bin.000001’,master_log_pos=154;

這裡的master_log_file 和msater_log_pos的值都來自於剛剛主庫的這條sql:show master status,
這裡寫圖片描述

4.啟動主從複製

在從庫執行:start slave;
這裡寫圖片描述
代表啟動成功了。

5.檢查環境是否配置成功

執行 show slave status \G
這裡寫圖片描述
這個 Slave_IO_Running: Yes和Slave_SQL_Running: Yes都為yes代表成功了。,
測試主從複製是否好使,在主庫執行sql
這裡寫圖片描述
在從庫檢視:
這裡寫圖片描述
到這裡,全部庫的主從配置就完成了,實際應用中可能會用到單個表的同步,或者部分表的同步,只需要在主庫的/etc/my.cnf里加上

只複製某個表replicate-do-table=tablename
只複製某些表(可用匹配符)replicate-wild-do-table=tablename%
只複製某個庫replicate-do-db=dbname
只複製某些庫replicte-wild-do-db=dbname%
不復制某個表replicate-ignore-table=tablename

配置就可以了