成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

MySQL主從復制延遲原因以及解決方案

瀏覽:111日期:2023-10-11 10:02:44

來源:公眾號「神諭的暗影長廊」

在異步或半同步的復制結構中,從庫出現延遲是一件十分正常的事。雖出現延遲正常,但是否需要關注,則一般是由業務來評估。如:從庫上有需要較高一致性的讀業務,并且要求延遲小于某個值,那么則需要關注。

簡單概述一下復制邏輯:

1、主庫將對數據庫實例的變更記錄到binlog中。 2、主庫會有binlog dump線程實時監測binlog的變更并將這些新的events推給從庫(Master has sent all binlog to slave; waiting for more updates)3、從庫的IO Thread接收這些events,并將其記錄入relaylog。4、從庫的SQL Thread讀取relaylog的events,并將這些events應用(或稱為重放)到從庫實例。

上述為默認的異步復制邏輯,半同步復制又有些許不同,此處不再贅述。

此外,判斷從庫有延遲是十分簡單的一件事:在從庫上通過SHOW SLAVE STATUS檢查Seconds_Behind_Master值即可。

產生延遲的原因及處理思路? 主庫DML請求頻繁(tps較大)

即主庫寫請求較多,有大量insert、delete、update并發操作,短時間產生了大量的binlog。

【原因分析】

主庫并發寫入數據,而從庫SQL Thread為單線程應用日志,很容易造成relaylog堆積,產生延遲。

【解決思路】

做sharding,通過scale out打散寫請求。或考慮升級到MySQL 5.7+,開啟基于邏輯時鐘的并行復制。

? 主庫執行大事務

MySQL主從復制延遲原因以及解決方案

比如大量導入數據,INSERT INTO $tb1 SELECT * FROM $tb2、LOAD DATA INFILE等比如UPDATE、DELETE了全表等Exec_Master_Log_Pos一直未變,Slave_SQL_Running_State為Reading event from the relay log分析主庫binlog,看主庫當前執行的事務也可知曉。

【原因分析】

假如主庫花費200s更新了一張大表,在主從庫配置相近的情況下,從庫也需要花幾乎同樣的時間更新這張大表,此時從庫延遲開始堆積,后續的events無法更新。

【解決思路】

拆分大事務,及時提交。

? 主庫對大表執行DDL語句

現象和主庫執行大事務相近。檢查Exec_Master_Log_Pos一直未動,也有可能是在執行DDL。分析主庫binlog,看主庫當前執行的事務也可知曉。

【原因分析】

1、DDL未開始,被阻塞,SHOW SLAVE STATUS檢查到Slave_SQL_Running_State為waiting for table metadata lock,且Exec_Master_Log_Pos不變。2、DDL正在執行,SQL Thread單線程應用導致延遲增加。Slave_SQL_Running_State為altering table,Exec_Master_Log_Pos不變

【解決思路】

通過processlist或information_schema.innodb_trx來找到阻塞DDL語句的查詢,干掉該查詢,讓DDL正常在從庫執行。DDL本身造成的延遲難以避免,建議考慮:① 業務低峰期執行② set sql_log_bin=0后,分別在主從庫上手動執行DDL(此操作對于某些DDL操作會造成數據不一致,請務必嚴格測試)

? 主庫與從庫配置不一致:【原因分析】

硬件上:主庫實例服務器使用SSD,而從庫實例服務器使用普通SAS盤、cpu主頻不一致等配置上:如RAID卡寫策略不一致,OS內核參數設置不一致,MySQL落盤策略不一致等

【解決思路】

盡量統一DB機器的配置(包括硬件及選項參數)甚至對于某些OLAP業務,從庫實例硬件配置高于主庫等

? 表缺乏主鍵或唯一索引

binlog_format=row的情況下,如果表缺乏主鍵或唯一索引,在UPDATE、DELETE的時候可能會造成從庫延遲驟增。此時Slave_SQL_Running_State為Reading event from the relay log。并且SHOW OPEN TABLES WHERE in_use=1的表一直存在。Exec_Master_Log_Pos不變。mysqld進程的cpu幾近100%(無讀業務時),io壓力不大

【原因分析】

做個極端情況下的假設,主庫更新一張500w表中的20w行數據,該update語句需要全表掃描而row格式下,記錄到binlog的為20w次update操作,此時SQL Thread重放將特別慢,每一次update可能需要進行一次全表掃描

【解決思路】

檢查表結構,保證每個表都有顯式自增主鍵,并建立合適索引。

? 從庫自身壓力過大【原因分析】

從庫執行大量select請求,或業務大部分select請求被路由到從庫實例上,甚至大量OLAP業務,或者從庫正在備份等。此時可能造成cpu負載過高,io利用率過高等,導致SQL Thread應用過慢。

【解決思路】

建立更多從庫,打散讀請求,降低現有從庫實例的壓力。

? MyISAM存儲引擎

此時從庫Slave_SQL_Running_State為Waiting for table level lock

【原因分析】

MyISAM只支持表級鎖,并且讀寫不可并發操作。主庫在設置@@concurrent_insert對應值的情況下,能并發在select時執行insert,但從庫SQL Thread重放時并不可并發,有興趣可以再去看看myisam這塊的實現。

【解決思路】

當然是選擇原諒它了,既然選擇了MyISAM,那么也應該要有心理準備。(還存在其他場景,也不推薦MyISAM在復制結構中使用)改成InnoDB吧。

總結:

通過SHOW SLAVE STATUS與SHOW PROCESSLIST查看現在從庫的情況。(順便也可排除在從庫備份時這種原因)若Exec_Master_Log_Pos不變,考慮大事務、DDL、無主鍵,檢查主庫對應的binlog及position即可。若Exec_Master_Log_Pos變化,延遲逐步增加,考慮從庫機器負載,如io、cpu等,并考慮主庫寫操作與從庫自身壓力是否過大。

如果上述原因都沒有,那么請教請教DBA大佬們吧。

當然,Seconds_Behind_Master也不一定準確,存在在少部分場景下,雖Seconds_Behind_Master為0,但主從數據不一致的情況。這將是另一篇博文了。

全文完。

以上就是MySQL主從復制延遲原因以及解決方案的詳細內容,更多關于MySQL主從復制延遲的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美日韩国产一级| 精品一区二区成人精品| 看电影不卡的网站| 久久99伊人| 一区二区激情视频| 亚洲免费高清| 一区二区三区在线观看欧美 | 亚洲影视在线播放| 国产亚洲高清视频| 亚洲一区在线免费观看| 国产乱码精品一区二区三区不卡| 亚洲精品亚洲人成人网在线播放| 色综合中文字幕国产 | 日本一区二区三区电影| 色综合色综合色综合色综合色综合 | 国产精品美女久久久久久2018| 欧美在线视屏| 中文子幕无线码一区tr| 欧美日本一区| 中文字幕制服丝袜成人av| 激情欧美丁香| 日韩理论在线观看| 国产精品美女久久久| 亚洲成年人影院| 日本高清不卡在线观看| 极品尤物av久久免费看| 91精品国产欧美一区二区18| 成人看片黄a免费看在线| 久久精品一二三| 韩日成人av| 亚洲影视资源网| 色香蕉成人二区免费| 久久超碰97人人做人人爱| 日韩一区二区视频在线观看| 97久久精品人人澡人人爽| 国产免费久久精品| 亚洲精品资源| 日本三级韩国三级欧美三级| 宅男噜噜噜66一区二区66| 成人动漫av在线| 国产精品国产三级国产专播品爱网| 一区二区国产精品| 日本麻豆一区二区三区视频| 8v天堂国产在线一区二区| 成人国产精品免费观看动漫| 中文字幕不卡在线播放| 日韩视频精品在线观看| 午夜成人免费电影| 91精品午夜视频| 欧美一区二区三区在线播放| 亚洲人成影院在线观看| 一本大道久久a久久综合 | 影音先锋久久久| 五月天国产精品| 欧美电影一区二区三区| 欧美在线网址| 亚洲电影一级黄| 欧美日韩一级二级| 色综合亚洲欧洲| 亚洲自拍欧美精品| 欧美精品1区2区| 欧美性事免费在线观看| 婷婷亚洲久悠悠色悠在线播放| 制服视频三区第一页精品| 欧美日韩在线播放一区二区| 亚洲国产精品久久久久秋霞影院 | 国产精品亚洲第一区在线暖暖韩国| 日本一区二区在线不卡| 蜜桃av一区| www.日本不卡| 亚洲图片欧美综合| 日韩免费高清视频| 国产精品一区二区三区观看| 国产一区二三区好的| 中文字幕一区不卡| 欧美视频一区二区三区在线观看| 欧美在线免费一级片| 天堂蜜桃一区二区三区| 精品国产伦一区二区三区观看体验| 99re6热在线精品视频播放速度| 国产中文一区二区三区| 亚洲日本欧美天堂| 91麻豆精品国产91久久久 | 久久这里只有| 暴力调教一区二区三区| 五月婷婷激情综合网| 久久久亚洲精品石原莉奈| 久久精品伊人| 欧美一区二区三区另类| 日韩av不卡一区二区| 国产欧美综合在线| 在线观看免费视频综合| 国产精品99一区二区| 激情综合一区二区三区| 亚洲女女做受ⅹxx高潮| 日韩欧美一级片| 久久久久九九九| 国产精品多人| 国产精品亚洲第一区在线暖暖韩国 | 久久影院视频免费| 久久欧美肥婆一二区| 91香蕉视频mp4| 老司机午夜精品| 亚洲精品视频观看| 精品国产91久久久久久久妲己| 久久精品五月婷婷| 欧美粗暴jizz性欧美20| 精品中文字幕一区二区| 亚洲精品成a人| 久久蜜桃av一区二区天堂| 91成人在线观看喷潮| 在线视频成人| 91在线免费看| 国产在线一区观看| 亚洲国产精品尤物yw在线观看| 国产日韩欧美精品一区| 欧美色图12p| 国产精品免费在线| 欧美日韩少妇| 成人黄色大片在线观看| 精品在线播放午夜| 亚洲va天堂va国产va久| 亚洲欧洲日产国产综合网| 欧美精品一区二| 欧美一区二区视频网站| 在线亚洲一区观看| 国产精品一区二区在线观看| 国产在线日韩| av一二三不卡影片| 久久99国产精品久久| 一区二区三区中文字幕| 国产欧美一区二区三区沐欲| 日本一区二区三区在线不卡| 精品国产一区二区亚洲人成毛片| 欧美日韩1234| 在线观看一区日韩| 久久久久国产精品一区三寸| av成人免费观看| 在线观看亚洲| 欧美日韩喷水| 91蜜桃在线观看| 成人激情综合网站| 国产传媒日韩欧美成人| 久久99国产精品久久99果冻传媒| 亚洲国产精品综合小说图片区| 亚洲欧洲日韩一区二区三区| 久久精品一区二区三区四区| 精品国产伦一区二区三区观看方式| 7777精品伊人久久久大香线蕉完整版| 久久综合一区| 麻豆av福利av久久av| 国产日韩一区二区三区在线播放| 亚洲激情偷拍| 亚洲经典在线| 亚洲精品护士| 亚洲国产精品一区制服丝袜| 欧美日韩在线高清| 国产精品theporn| 欧美激情第二页| 91日韩精品一区| av男人天堂一区| 99在线精品视频| 成人精品视频一区| 国内成+人亚洲+欧美+综合在线 | 成人福利视频在线| 国产成人免费视频精品含羞草妖精| 一区二区在线观看不卡| 亚洲人成网站精品片在线观看| 国产精品白丝在线| 亚洲欧洲日韩av| 中文字幕制服丝袜成人av| 日韩理论片一区二区| 亚洲人妖av一区二区| 日韩美女视频一区| 一区二区三区四区精品在线视频| 亚洲精选一二三| 亚洲最新在线观看| 亚洲va欧美va人人爽午夜| 日韩精品五月天| 免费观看在线色综合| 美女任你摸久久| 狠狠色狠狠色综合系列| 国产精品一区二区91| 成人免费视频一区二区| 91麻豆国产在线观看| 欧美日韩一区二区视频在线观看 | 精品国产乱码91久久久久久网站| 日韩美女视频在线| 久久久久久9999| 国产精品久久久久久久岛一牛影视| 最新久久zyz资源站| 亚洲综合在线视频| 人禽交欧美网站| 国产成人亚洲综合a∨婷婷图片| 国产91丝袜在线观看| 99久久er热在这里只有精品66| 欧美日韩一区二区视频在线观看| 亚洲免费大片| 色噜噜久久综合| 91精品国产91综合久久蜜臀|