MySQL復(fù)制原理,其通過三個線程來完成,在master節(jié)點上運行的binlogdump線程以及在slave節(jié)點上運行的I/O線程和SQL線程。
1. master節(jié)點上的binlogdump線程,在slave與其正常連接的情況下,將binlog發(fā)送到slave上。
2.slave節(jié)點上的I/O線程,通過讀取master節(jié)點發(fā)送的內(nèi)容,并將數(shù)據(jù)復(fù)制到本地的relaylog中。
3.slave節(jié)點上的SQL線程,讀取relaylog中的日志,并將其事務(wù)在本地執(zhí)行。
環(huán)境:server7:172.25.66.7(master)
server8:172.25.66.8(slave)
在server7中:
vim /etc/my.cnf
/etc/init.d/mysqld start
進行數(shù)據(jù)庫初始化,第一次輸入的密碼為上面查看日志的臨時密碼,后面為root用戶設(shè)置的密碼要盡可能復(fù)雜,否則一直提示錯誤
在server8中也做相關(guān)操作
vim /etc/my.cfg
server8:查看授權(quán)是否成功
在master中:查看狀態(tài)
在slave中:
測試:
在master中
在slave中: