溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

原因在這!為什么執(zhí)行stop slave,再start slave后,可以繼續(xù)主從復(fù)制關(guān)系?

發(fā)布時(shí)間:2020-07-01 12:04:48 來源:網(wǎng)絡(luò) 閱讀:720 作者:insist_way 欄目:MySQL數(shù)據(jù)庫

寫在前面:

我們都知道Master寫滿了一個(gè)binlog,或者在Master手動(dòng)執(zhí)行了flush logs,SLave不需要做任何操作就可以繼續(xù)從Master接受數(shù)據(jù)進(jìn)行同步,不知道小伙伴們有沒有考慮過,這是為什么?


原因就是:

其實(shí)執(zhí)行stop slave,就是分別關(guān)閉了I/O線程(stop slave IO_THREAD)和SQL線程(stop slave SQL_THREAD),I/O線程會(huì)維護(hù)master.info信息的更新,SQL線程會(huì)維護(hù)relay-log.info信息的更新,在執(zhí)行start slave時(shí)候,會(huì)依照master.info和relay-log.info信息,繼續(xù)執(zhí)行I/O線程和SQL線程,所以復(fù)制就可以進(jìn)行下去了


下面演示一下:

在Master主機(jī)上執(zhí)行:

mysql> show master status\G;
*************************** 1. row ***************************
???????????? File: mysql-bin.000008
???????? Position: 120


在Slave主機(jī)上執(zhí)行

cat /home/data/mysql3306/master.info
mysql-bin.000008
120

192.168.32.3


現(xiàn)在手動(dòng)在Master滾動(dòng)一次binlog日志

mysql> flush logs;

mysql> show master status\G;
*************************** 1. row ***************************
???????????? File: mysql-bin.000009
???????? Position: 120


在Slave主機(jī)上執(zhí)行

cat /home/data/mysql3306/master.info
23
mysql-bin.000009
120

192.168.32.3


可以看到,Slave主機(jī)正是根據(jù)master.info文件,來對Master的數(shù)據(jù)進(jìn)行復(fù)制的


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI