一、什麼是主從複製( 讀寫分離)
至少需要2臺mysql服務器,一臺配置爲主服務器,一臺配置爲從服務器,主服務器的數據要同步到從服務器。
二、主從複製的原理
mysql中有一種日誌,叫做bin日誌(二進制日誌),會記錄下所有修改過數據庫的sql語句。主從複製的原理實際是多臺服務器都開啓bin日誌,然後主服務器會把執行過的sql語句記錄到bin日誌中,之後把這個bin日誌發給從服務器,在從服務器再把bin日誌中記錄的sql語句同樣的執行一遍。這樣從服務器上的數據就和主服務器相同了。
配置主從複製
規劃:
xpslave1是master服務器:ip地址是:192.168.21.250
xpslave2是slave服務器,ip地址是192.168.21.252
1、配置主服務器
(1)開啓所有mysql服務器的log-bin日誌
修改配置文件添加
log-bin=mysql-bin
(2)每臺服務器設置一個唯一的server-id的值。並重啓服務。
主服務器的配置:
(3)在主服務器上面授權一個用戶,讓從服務器使用該用戶來完成複製日誌。
語法:
grant replaction slave on *.* to ‘dalong’@’%’ identified by ‘123456’
2、配置從服務器
(1)先停止從服務器:
stop slave
(2)開始執行同步的操作命令
change master to master_host=”主服務器的ip地址”,master_user=”授權的用戶名稱”,master_password=”授權用戶的密碼”,master_log_file=”最新的 log-bin日誌文件名稱”,master_log_pos=”log-bin日誌文件裏面最後一個pos位置”
(3)啓動從服務器
start slave
(4)查看從服務器是否同步成功;
show slave status;
3、如何取消從服務器:
在從服務器裏面操作:
(1)停止從服務器:
stop slave
(2)執行reset slave all 取消從服務器