<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
        問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        如何恢復(fù)MySQL主從數(shù)據(jù)一致性

        來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-09 20:50:59
        文檔

        如何恢復(fù)MySQL主從數(shù)據(jù)一致性

        如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫(kù)的數(shù)據(jù)不一致,猜測(cè)備庫(kù)在同步過(guò)程中出現(xiàn)了問(wèn)題,于是,登上備庫(kù),使用 mysql> show slave status\G查看,果然,備庫(kù)在insert語(yǔ)句中因違反主鍵約束,導(dǎo)致備庫(kù)停止了同步。現(xiàn)在的問(wèn)題很明確,就是如何恢復(fù)主從庫(kù)數(shù)據(jù)的一致性。
        推薦度:
        導(dǎo)讀如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫(kù)的數(shù)據(jù)不一致,猜測(cè)備庫(kù)在同步過(guò)程中出現(xiàn)了問(wèn)題,于是,登上備庫(kù),使用 mysql> show slave status\G查看,果然,備庫(kù)在insert語(yǔ)句中因違反主鍵約束,導(dǎo)致備庫(kù)停止了同步。現(xiàn)在的問(wèn)題很明確,就是如何恢復(fù)主從庫(kù)數(shù)據(jù)的一致性。

        最近被告知,MySQL主從數(shù)據(jù)庫(kù)的數(shù)據(jù)不一致,猜測(cè)備庫(kù)在同步過(guò)程中出現(xiàn)了問(wèn)題,于是,登上備庫(kù),使用 mysql> show slave status\G查看,果然,備庫(kù)在insert語(yǔ)句中因違反主鍵約束,導(dǎo)致備庫(kù)停止了同步。現(xiàn)在的問(wèn)題很明確,就是如何恢復(fù)主從庫(kù)數(shù)據(jù)的一致性。

        可選方案如下:

        一、查看Master最新的Position,將其作為Slave復(fù)制的起點(diǎn)。

        這種思路體現(xiàn)的是過(guò)去的不一致既往不咎,現(xiàn)在保持同步即可。看起來(lái),這個(gè)思路和恢復(fù)主從庫(kù)數(shù)據(jù)的一致性的初衷有所違背,但這種方法,簡(jiǎn)單,高效,在測(cè)試環(huán)境,對(duì)歷史數(shù)據(jù)要求不高的場(chǎng)景中可使用。

        二、必須嚴(yán)格的恢復(fù)主從庫(kù)數(shù)據(jù)的一致性。

        在這里,也有兩種思路:

        1. 備份主庫(kù)數(shù)據(jù),并在從庫(kù)上恢復(fù),在歷史數(shù)據(jù)一致性的基礎(chǔ)上開(kāi)啟同步,但這種方法比較麻煩,必須在主庫(kù)上執(zhí)行鎖表操作,阻止客戶(hù)端對(duì)于表數(shù)據(jù)的更新操作,而且在數(shù)據(jù)量大的情況下,備份也是個(gè)耗時(shí)的工程。其實(shí),這種方法在實(shí)際生產(chǎn)環(huán)境中也很少用。

        2. Skip掉相關(guān)錯(cuò)誤

        其實(shí),這個(gè)說(shuō)活不是很?chē)?yán)謹(jǐn),準(zhǔn)備的說(shuō),是跳過(guò)相關(guān)的事務(wù)。在我今天這種情況下,就是skip掉因違反主鍵約束而失敗的insert語(yǔ)句。

        如何跳過(guò)相關(guān)事務(wù)

        一、停止slave服務(wù)

        二、SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;

        三、開(kāi)啟slave服務(wù)。

        這里跳過(guò)的是一個(gè)事務(wù)。當(dāng)然,也可以跳過(guò)多個(gè)事務(wù),但要謹(jǐn)慎,畢竟,你并不知道跳過(guò)的是什么事務(wù)。

        建議:可反復(fù)執(zhí)行上述步驟,仔細(xì)查看導(dǎo)致從庫(kù)不能同步的語(yǔ)句。有的時(shí)候,阻止從庫(kù)的事務(wù)太多,這種方法就顯得略為低效。

        可分析主庫(kù)日志的事務(wù),來(lái)確定SQL_SLAVE_SKIP_COUNTER的合適值。具體步驟如下:

        1、在備庫(kù)中執(zhí)行show slave status\G,確認(rèn)以下兩個(gè)參數(shù)

        根據(jù)上述兩個(gè)參數(shù)的值,在主庫(kù)中查看當(dāng)前阻礙從庫(kù)復(fù)制的事務(wù)以及之后的事務(wù)。

        mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776;

        這個(gè)是查看日志文件mysql-bin.000217中事務(wù)ID為673146776后的所有事務(wù)。

        當(dāng)然,SHOW BINLOG EVENTS的用法還是相當(dāng)靈活的,下述方式均可。

        mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776\G

        mysql> SHOW BINLOG EVENTS in 'mysql-bin.000217' from 673146776 limit 10;

        也可在主機(jī)環(huán)境下通過(guò)mysqlbinlog命令查看

        代碼如下:# mysqlbinlog mysql-bin.000217 --start-position=673146776

        如何查詢(xún)語(yǔ)句的執(zhí)行情況

        在從庫(kù)跳過(guò)相關(guān)事務(wù),重新啟動(dòng)Slave后,Slave_IO_Running,Slave_SQL_Running兩項(xiàng)均顯示“YES”,但Seconds_Behind_Master并沒(méi)有馬上下降,反而緩慢上升。

        這時(shí)候,通過(guò)show processlist語(yǔ)句查看線程的執(zhí)行情況,發(fā)現(xiàn)第一條語(yǔ)句執(zhí)行時(shí)間太長(zhǎng),“State”列顯示“Sending data”。關(guān)于“Sending data”的含義,官方說(shuō)明如下:

        可見(jiàn),該語(yǔ)句涉及了大量的磁盤(pán)讀。

        為了進(jìn)一步分析該語(yǔ)句的耗時(shí)分布,可設(shè)置profiling變量。步驟如下:

        一、在查詢(xún)開(kāi)始之前,設(shè)置set profiling=on;

        二、在語(yǔ)句執(zhí)行完畢后,通過(guò)show profiles查看語(yǔ)句的Query_ID。

        三、通過(guò)show profile for queryQuery_ID 查看語(yǔ)句的具體執(zhí)行情況。

        最后也發(fā)現(xiàn),該語(yǔ)句在Sending data階段耗時(shí)過(guò)久。

        總結(jié):

        1. 在執(zhí)行stop slave的時(shí)候,stop slave命令被hang住了,在網(wǎng)上查詢(xún)了相關(guān)資料,可能與Slave中有長(zhǎng)SQL或Locked的SQL執(zhí)行有關(guān),在這里,除show processlist外,最好不要執(zhí)行show slave status以及slave stop等slave相關(guān)命令。那么如何解決該問(wèn)題呢?等待鎖定SlaveSQL的線程結(jié)束,或者重啟數(shù)據(jù)庫(kù)。我選擇了后者。

        2. 在重啟備庫(kù)的過(guò)程中,還有段小插曲,在執(zhí)行start slave命令的時(shí)候,報(bào)如下錯(cuò)誤:ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository。網(wǎng)上很多資料都是推薦重新配置主從集群,這樣又回到了開(kāi)頭的方案選擇部分了。奇怪的時(shí),我關(guān)閉了從庫(kù),重新啟動(dòng),又好了。而兩次啟動(dòng)命令唯一的差別就是前一次啟動(dòng)使用的是mysqld,后一次啟動(dòng)使用的是mysqld_safe,而且多帶了一個(gè)--user參數(shù)。

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        如何恢復(fù)MySQL主從數(shù)據(jù)一致性

        如何恢復(fù)MySQL主從數(shù)據(jù)一致性:最近被告知,MySQL主從數(shù)據(jù)庫(kù)的數(shù)據(jù)不一致,猜測(cè)備庫(kù)在同步過(guò)程中出現(xiàn)了問(wèn)題,于是,登上備庫(kù),使用 mysql> show slave status\G查看,果然,備庫(kù)在insert語(yǔ)句中因違反主鍵約束,導(dǎo)致備庫(kù)停止了同步。現(xiàn)在的問(wèn)題很明確,就是如何恢復(fù)主從庫(kù)數(shù)據(jù)的一致性。
        推薦度:
        標(biāo)簽: 修復(fù) 恢復(fù) 一致
        • 熱門(mén)焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門(mén)推薦

        專(zhuān)題
        Top
        主站蜘蛛池模板: 黄页网站在线看免费| 免费精品久久天干天干| 女人18毛片a级毛片免费| 日本亚洲免费无线码 | 国产视频精品免费视频| 欧美a级成人网站免费| 凹凸精品视频分类国产品免费| 婷婷亚洲天堂影院| 羞羞视频免费网站含羞草| 亚洲Av无码乱码在线znlu| 一出一进一爽一粗一大视频免费的| 97国产在线公开免费观看| 免费人成视频x8x8入口| 成年大片免费视频播放一级| 在线永久免费的视频草莓| 亚洲视频一区在线观看| 久久精品免费一区二区喷潮 | 亚洲不卡1卡2卡三卡2021麻豆| 国产成人 亚洲欧洲| 久久青草91免费观看| 亚洲国产精品热久久| 五级黄18以上免费看| 亚洲AV一宅男色影视| aaa毛片免费观看| 亚洲精选在线观看| 国产精品成人免费视频网站京东| 日本亚洲欧洲免费天堂午夜看片女人员 | 国产三级免费电影| 国产精品视频全国免费观看| 久久精品无码一区二区三区免费 | 日韩电影免费在线观看视频 | 最近中文字幕免费mv在线视频 | 亚洲国产精品久久久久| av大片在线无码免费| 国产一区二区三区亚洲综合| 亚洲一区AV无码少妇电影☆| 久久国产乱子伦精品免费一| 亚洲人成网站免费播放| 成人人观看的免费毛片| 久久国产精品免费一区| 亚洲一区二区三区在线观看蜜桃|