成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

MySQL雙中心復(fù)制引起主從復(fù)制異常處理分享

IT那活兒 / 652人閱讀
MySQL雙中心復(fù)制引起主從復(fù)制異常處理分享
故障描述


雙中心建設(shè)期間,xxx機(jī)房內(nèi)部分mysql備庫出現(xiàn)復(fù)制出錯現(xiàn)象,所有出錯信息一致,錯誤信息如下:


具體出錯原因:

從以上信息看,在對表“t_xxx_xxxxx”進(jìn)行更新操作時,沒找到相應(yīng)的記錄。


故障分析


目前所有mysql主從采用4并發(fā)、半同步方式進(jìn)行數(shù)據(jù)復(fù)制,以保證主從數(shù)據(jù)復(fù)制的效率與數(shù)據(jù)一致性。由本次具體出錯信息看,當(dāng)時正有4個線程在并發(fā)進(jìn)行數(shù)據(jù)同步:


  • 線程1:操作“5830d371-600d-11e8-bd61-fa163ef6f4ff:240662”事務(wù)

  • 線程2:操作“5830d371-600d-11e8-bd61-fa163ef6f4ff:240659”事務(wù)

  • 線程3:操作“5830d371-600d-11e8-bd61-fa163ef6f4ff:240660”事務(wù)

  • 線程4:操作“5830d371-600d-11e8-bd61-fa163ef6f4ff:240661”事務(wù)


Mysql數(shù)據(jù)復(fù)制是在進(jìn)行“5830d371-600d-11e8-bd61-fa163ef6f4ff:240662”事務(wù)操作時出現(xiàn)了“更新數(shù)據(jù)時,無法找到相應(yīng)記錄”錯誤。


1、分析binlog

分析“5830d371-600d-11e8-bd61-fa163ef6f4ff:240662”事務(wù)所在binlog:

該事務(wù)是個更新”t_xxx_xxxxx”的操作,修改記錄”call_swftno=2018052713390100901288006”

其它三個事務(wù)為:


  • 5830d371-600d-11e8-bd61-fa163ef6f4ff:240659

該事務(wù)為表“t_xxx_xxxxx”的insertinto on語句,共插入50條記錄,其中包括記錄“call_swftno=2018052713390100901288006”記錄的插入


  • 5830d371-600d-11e8-bd61-fa163ef6f4ff:240660

該事務(wù)為表“t_xxx_xxxxx”的insertinto on語句,共插入50條記錄


  • 5830d371-600d-11e8-bd61-fa163ef6f4ff:240661

該事務(wù)為表“t_xxx_xxxxxinfo”的更新操作


查看4個事務(wù)在主庫上的提交次序

從“l(fā)ast_committed”值可以看出,事務(wù)“240659、240660、240661”并發(fā)運行,并同時提交,事務(wù)“240662”稍后提交。即在主庫上,事務(wù)“240659、240660、240661”同時執(zhí)行,事務(wù)“240662”隨后執(zhí)行。


2、備庫事務(wù)運行

從應(yīng)用邏輯出發(fā),事務(wù)“240659”與“240662”是有執(zhí)行次序的,不能同時執(zhí)行。但基于mysql主從并發(fā)復(fù)制機(jī)制,并從備庫復(fù)制出錯信息看出,事務(wù)“240659、240660、240661、240662”在備庫上是并發(fā)執(zhí)行的,最終導(dǎo)致事務(wù)“240662”在執(zhí)行時,由于事務(wù)“240659”還沒執(zhí)行完而找不到記錄“call_swftno=2018052713390100901288006”的錯誤。


3、備庫記錄查詢

在備庫上查詢“240662”事務(wù)更改所對應(yīng)的記錄,發(fā)現(xiàn)對應(yīng)記錄“call_swftno=2018052713390100901288006”存在,說明了事務(wù)“240659”在事務(wù)“240662”執(zhí)行出錯后,成功執(zhí)行完成。


故障處理


重啟mysql主從復(fù)制線程,主從復(fù)制恢復(fù)正常,繼續(xù)進(jìn)行數(shù)據(jù)同步。


分析總結(jié)


主庫上短時間內(nèi)有執(zhí)行次序的相關(guān)操作,在從庫上被基于并發(fā)主從復(fù)制的機(jī)制變更成了并發(fā)操作,導(dǎo)致了有依賴操作的事務(wù)出現(xiàn)“找不相關(guān)記錄”錯誤。


所有機(jī)房內(nèi)mysql主從復(fù)制配置都一致,但I(xiàn)DC機(jī)房內(nèi)的數(shù)據(jù)是由前臺業(yè)務(wù)系統(tǒng)產(chǎn)生的,具有一定的時間間隔,沒產(chǎn)生這種現(xiàn)象,而淮安機(jī)房內(nèi)的數(shù)據(jù)是由雙中心同步軟件同步產(chǎn)生的,短時間內(nèi)產(chǎn)生大量有操作依賴的事務(wù),便產(chǎn)生了上述錯誤現(xiàn)象。


Mysql參數(shù)“slave_preserve_commit_order“可以控制Slave上的binlog提交順序和Master上的binlog的提交順序一樣,保證GTID的順序。該參數(shù)只能用于開啟了logicalclock并且啟用了binlog的復(fù)制。即對于多線程復(fù)制,該參數(shù)用來保障事務(wù)在slave上執(zhí)行的順序與relaylog中的順序嚴(yán)格一致。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/130160.html

相關(guān)文章

  • 【獨家】終生受用的Redis高可用技術(shù)解決方案大全

    摘要:哨兵是社區(qū)版本推出的原生高可用解決方案,部署架構(gòu)主要包括兩部分集群和數(shù)據(jù)集群,其中集群是由若干節(jié)點組成的分布式集群。自研推薦推薦自研的高可用解決方案,主要體現(xiàn)在配置中心故障探測和的處理機(jī)制上,通常需要根據(jù)企業(yè)業(yè)務(wù)的實際線上環(huán)境來定制化。 最近很多朋友向我咨詢關(guān)于高可用的方案的優(yōu)缺點以及如何選擇合適的方案線上使用,剛好最近在給宜人貸,光大銀行做企業(yè)內(nèi)訓(xùn)的時候也詳細(xì)講過,這里我再整理發(fā)出來...

    cc17 評論0 收藏0
  • 【獨家】終生受用的Redis高可用技術(shù)解決方案大全

    摘要:哨兵是社區(qū)版本推出的原生高可用解決方案,部署架構(gòu)主要包括兩部分集群和數(shù)據(jù)集群,其中集群是由若干節(jié)點組成的分布式集群。自研推薦推薦自研的高可用解決方案,主要體現(xiàn)在配置中心故障探測和的處理機(jī)制上,通常需要根據(jù)企業(yè)業(yè)務(wù)的實際線上環(huán)境來定制化。 最近很多朋友向我咨詢關(guān)于高可用的方案的優(yōu)缺點以及如何選擇合適的方案線上使用,剛好最近在給宜人貸,光大銀行做企業(yè)內(nèi)訓(xùn)的時候也詳細(xì)講過,這里我再整理發(fā)出來...

    helloworldcoding 評論0 收藏0
  • 面試官:咱們來聊一聊mysql主從延遲

    摘要:編輯器編輯器背景編輯器前段時間遇到一個線上問題,后來排查好久發(fā)現(xiàn)是因為主從同步延遲導(dǎo)致的,所以今天寫一篇文章總結(jié)一下這個問題希望對你有用。編輯器幾句嘮叨編輯器大家好,我是小飯,一枚后端工程師。背景前段時間遇到一個線上問題,后來排查好久發(fā)現(xiàn)是因為主從同步延遲導(dǎo)致的,所以今天寫一篇文章總結(jié)一下這個問題希望對你有用。如果覺得還不錯,記得加個關(guān)注點個贊哦思維導(dǎo)圖思維導(dǎo)圖常見的主從架構(gòu)隨著日益增長的訪...

    EasonTyler 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<