一、現(xiàn)象
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),湯原企業(yè)網(wǎng)站建設(shè),湯原品牌網(wǎng)站建設(shè),網(wǎng)站定制,湯原網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,湯原網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。凌晨對(duì)線上一張表添加索引,表數(shù)據(jù)量太大(1億+數(shù)據(jù),數(shù)據(jù)量50G以上),造成主從延遲幾個(gè)小時(shí),各個(gè)依賴從庫的系統(tǒng)無法查詢數(shù)據(jù),最終影響業(yè)務(wù)。
現(xiàn)在就梳理下主從延遲的原理。
二、原理
根據(jù) MySQL 官方文檔 MySQL Replication Implementation Details 中的描述,MySQL 主從復(fù)制依賴于三個(gè)線程:master
一個(gè)線程(Binlog dump thread
),slave
兩個(gè)線程(I/O thread
和SQL thread
)。主從復(fù)制流程如下圖:
master 服務(wù)器和 slave 服務(wù)器連接時(shí),創(chuàng)建Binlog dump thread
以發(fā)送bin log
數(shù)據(jù):
Binlog dump thread
對(duì)應(yīng)一個(gè) slave 服務(wù)器;Binlog dump thread
從bin log
獲取數(shù)據(jù)時(shí)會(huì)加鎖,獲取到數(shù)據(jù)后,立即釋放鎖。當(dāng) slave 服務(wù)器收到 START_SLAVE 命令時(shí),會(huì)創(chuàng)建I/O thread
和SQL thread
:
I/O thread
以拉的方式,從 master 讀取事件,并存儲(chǔ)到 slave 服務(wù)器的relay log
中;SQL thread
從relay log
中讀取事件并執(zhí)行;slave
可以按照自己的節(jié)奏讀取和更新數(shù)據(jù),也可以隨意操作復(fù)制進(jìn)程(啟動(dòng)和停止)。注: START_SLAVE
命令成功啟動(dòng)線程后,如果后面I/O thread
或SQL thread
因?yàn)槟承┰蛲V?,則不會(huì)有任何的警告,業(yè)務(wù)方無法感知。可以通過查看 slave 的 error 日志,或者通過 SHOW SLAVE STATUS 查看 slave 上的線程狀態(tài)。
通過 SHOW PROCESSLIST 可查看線程狀態(tài):
Binlog dump thread:
mysql> SHOW PROCESSLIST\G *************************** 1. row *************************** Id: 2 User: root Host: localhost:32931 db: NULL Command: Binlog Dump Time: 94 State: Has sent all binlog to slave; waiting for binlog to be updated Info: NULL
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享題目:MySQL主從延遲現(xiàn)象及原理分析詳解-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.rwnh.cn/article22/cepccc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、虛擬主機(jī)、網(wǎng)站營(yíng)銷、Google、營(yíng)銷型網(wǎng)站建設(shè)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容