婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL主從同步機制與同步延時問題追查過程

MySQL主從同步機制與同步延時問題追查過程

熱門標簽:昆明電信400電話辦理 南昌高頻外呼系統哪家公司做的好 電銷機器人各個細節介紹 溫州瑞安400電話怎么申請 俄國地圖標注app 電話機器人市場趨勢 電銷機器人 行業 百度地圖標注后不顯示 淄博400電話申請

前言

作為一名DBA,在工作中會經常遇到一些MySQL主從同步延遲的問題,這些同步慢的問題,其實原因非常多,可能是因為主從的網絡問題導致,可能是因為網絡帶寬問題導致,可能是因為大事務導致,也可能是因為單線程復制導致的延遲。

今天遇到一個問題,Mysql持續報錯,主從同步延時數過大或錯誤。所以這篇文章給大家分享下主從同步的機制原理以及問題排查思路。

故障表現

最直觀的表現為:

mysql> show slave status\G;
 // 狀態一
 Seconds_Behind_Master: NULL
 // 狀態二
 Seconds_Behind_Master: 0
 // 狀態三
 Seconds_Behind_Master: 79

連續查詢,大部分時間該屬性值=0,偶發性出現Null或者79等延時值。導致觀察主從同步延時的監控持續報警。

故障原因及解決方案

多臺備機的server-id一致,導致主機無法長時間同某一臺備機連接,進而無法正常同步。

修改server-id后,重啟數據庫恢復。

主從同步機制

MySQL的主從同步,又稱為復制(replication),是一種內置的高可用高性能集群解決方案,主要功能有:

  • 數據分布:同步不需要很大帶寬,可以實現多數據中心復制數據。
  • 讀取的負載均衡:通過服務器集群,可以通過DNS輪詢、Linux LVS等GSLB(全局負載均衡)方式,降低主服務器的讀壓力。
  • 數據庫備份:復制是備份的一部分,但并不能代替備份。還需要與快照相結合。
  • 高可用性和故障轉移:從服務器可以快速切換為主服務器,減少故障的停機時間和恢復時間。

主從同步分為3步:

  1. 主服務器(master)把數據更改記錄到二進制日志(binlog)中。
  2. 從服務器(slave)把主服務器的二進制日志復制到自己的中繼日志(relay log)中。
  3. 從服務器重做中繼日志中的日志,把更改應用到自己的數據庫上,達到數據的一致性。

主從同步是一個異步實時的同步,會實時的傳輸,但存在執行上的延時,如果主服務器壓力很大,延時也會相應擴大。

通過上面的圖,可以看到一共需要3個線程:

  1. 主服務器的日志傳送線程:負責將二進制日志增量傳送到備機
  2. 從服務器的I/O線程:負責讀取主服務器的二進制日志,并保存為中繼日志
  3. 從服務器的SQL線程,負責執行中繼日志

查看MySQL線程

我們可以使用show full processlist;命令來查看MySQL的狀態:

主機的狀態:

備機的狀態:

可以看到,我的集群架構為1臺主機、4臺備機,所以在主機中有4個同步線程(已經發送所有的binlog數據到備機,等待binlog日志更新),1個查看命令線程(show full processlist)。在備機中有1個查看命令線程,1個I/O線程(等待主機發送同步數據事件),1個SQL線程(已經讀取了所有中繼日志,等待I/O線程來更新它)。

查看同步狀態

因為主從同步是異步實時的,也就是會存在延時的情況,我們可以通過show slave status;來查看備機上的同步延時:

在主從同步中我們需要關注的一些屬性,已經給大家標紅了:

  • Slave_IO_State: 當前I/O線程的狀態
  • Master_Log_File: 當前同步的主服務器的二進制文件
  • Read_Master_Log_Pos: 當前同步的主服務器的二進制文件的偏移量,單位為字節,如圖中為已經同步了12.9M(13630580/1024/1024)的內容
  • Relay_Master_Log_File: 當前中繼日志同步的二進制文件
  • Slave_IO_Running: 從服務器中I/O線程的運行狀態,YES為運行正常
  • Slave_SQL_Running: 從服務器中SQL線程的運行狀態,YES為運行正常
  • Exec_Master_Log_Pos: 表示同步完成的主服務器的二進制日志偏移量
  • Seconds_Behind_Master: 表示從服務器數據比主服務器落后的持續時長

同樣可以通過show master status;命令來查看主服務器的運行狀態:

正常運行的主從同步狀態:

Slave_IO_Running: YES
Slave_SQL_Running: YES
Seconds_Behind_Master: 0

問題排查

在理解了主從同步的機制后,再來看今天遇到的問題,通過查看備機狀態,我們觀察在三種狀態下的幾個關鍵屬性值:

mysql> show slave status\G;
#狀態一:
 Slave_IO_State: Reconnecting after a failed master event read
 Slave_IO_Running: No
 Slave_SQL_Running: Yes
 Seconds_Behind_Master: NULL
#狀態二:
 Slave_IO_State: Waiting for master to send event
 Slave_IO_Running: Yes
 Slave_SQL_Running: Yes
 Seconds_Behind_Master: 0
#狀態三:
 Slave_IO_State: Queueing master event to the relay log
 Slave_IO_Running: Yes
 Slave_SQL_Running: Yes
 Seconds_Behind_Master: 636

通過MySQL主從復制線程狀態轉變,我們可以看到三種狀態的不同含義:

# 狀態一
# 線程正嘗試重新連接主服務器,當連接重新建立后,狀態變為Waiting for master to send event。
Reconnecting after a failed master event read
# 狀態二
# 線程已經連接上主服務器,正等待二進制日志事件到達。如果主服務器正空閑,會持續較長的時間。如果等待持續slave_read_timeout秒,則發生超時。此時,線程認為連接被中斷并企圖重新連接。
Waiting for master to send event

# 狀態三
# 線程已經讀取一個事件,正將它復制到中繼日志供SQL線程來處理。
Queueing master event to the relay log

在這里,我們可以猜測,由于某些原因,從服務器不斷的和主服務器進行斷開并嘗試重連,重連成功后又再次斷開。

我們再看看主機的運行情況:

發現問題出在10.144.63.*和10.144.68.*兩臺機器上,我們查看其中一臺的錯誤日志:

190214 11:33:20 [Note] Slave: received end packet from server, apparent master shutdown:
190214 11:33:20 [Note] Slave I/O thread: Failed reading log event, reconnecting to retry, log 'mysql-bin.005682' at postion 13628070

拿到關鍵字Slave: received end packet from server, apparent master shutdown: Google搜索一下,在文章Confusing MySQL Replication Error Message中可以看到原因為兩臺備機的server-id重復。

One day it happen to me, and took me almost an hour to find that out.
Moving foward I always use a base my.cnf to I copy to any other server and the first thing is to increase the server-id.
Could MySQL just use the servername intead of a numeric value?

問題修復

定位了問題,我們確認下是否重復,發現兩臺備機的該字段確實相同:

vim my.cnf

#replication
log-bin=mysql-bin
# 這個隨機數字相同導致的
server-id=177230069
sync_binlog=1

更改一個其他不同的數字,保存,重啟MySQL進程,報警恢復。

總結

最終來看,這個問題的解決非常簡單,但從剛開始的迷茫到最后的思路清晰,都是我們排查問題所常見的,這篇文章的主要收獲是讓你明白主從同步的機制和追查問題的思路,希望下次我們都能很快的解決主從同步帶給我們的問題。

好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

參考資料

  • 《MySQL基礎內幕 InnoDB存儲引擎 第2版》P8.7 復制
  • MySQL主從復制線程狀態轉變
  • Confusing MySQL Replication Error Message
您可能感興趣的文章:
  • MySQL 主從同步,事務回滾的實現原理
  • MySQL數據庫主從同步實戰過程詳解
  • MySQL主從同步中的server-id示例詳解
  • Centos7系統下Mysql主從同步配置方案
  • MySQL主從同步延遲的原因及解決辦法
  • MySQL數據庫的主從同步配置與讀寫分離
  • Mysql主從同步Last_IO_Errno:1236錯誤解決方法
  • Mysql主從同步的實現原理
  • 詳解Mysql主從同步配置實戰
  • 詳解windows下mysql的主從同步
  • 詳解MySQL數據庫設置主從同步的方法
  • Mysql數據庫的主從同步配置

標簽:洛陽 葫蘆島 海口 安徽 拉薩 甘南 嘉峪關 吐魯番

巨人網絡通訊聲明:本文標題《MySQL主從同步機制與同步延時問題追查過程》,本文關鍵詞  MySQL,主從,同步,機制,與,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL主從同步機制與同步延時問題追查過程》相關的同類信息!
  • 本頁收集關于MySQL主從同步機制與同步延時問題追查過程的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    综合激情成人伊人| 国产一区二区三区四区五区美女 | 国产欧美一区二区精品性| 成人丝袜视频网| 97se狠狠狠综合亚洲狠狠| 99re在线视频这里只有精品| 99久久免费国产| 国产无一区二区| 一区二区久久久| 一区二区三区不卡视频| 琪琪一区二区三区| 久久久久久久久久久久久久久99| 国产一区二区视频在线播放| 成人午夜在线播放| 欧美老年两性高潮| 精品国产免费久久| 久久蜜桃av一区精品变态类天堂| 亚洲综合色成人| 久久国产三级精品| 91丨porny丨蝌蚪视频| 欧美日本一区二区| 日本怡春院一区二区| 国产在线视视频有精品| 免费高清视频精品| 激情综合网av| 欧美视频你懂的| 日韩欧美亚洲一区二区| 亚洲视频免费看| 国产精品无码永久免费888| 成人午夜av影视| 欧美一区二区黄| 亚洲日韩欧美一区二区在线| 美女视频黄 久久| 亚洲一区二区三区四区五区黄| 在线免费观看日本欧美| 日本一区二区不卡视频| 国产自产v一区二区三区c| 国产不卡视频在线播放| 国产亚洲成av人在线观看导航| 久久久www免费人成精品| 日本aⅴ免费视频一区二区三区| 91小视频在线| 亚洲精品视频在线| 国产欧美一区二区精品忘忧草 | 亚洲精品一区二区三区在线观看| 成人精品国产一区二区4080| 久久综合中文字幕| 国产剧情一区在线| 久久精品欧美日韩精品| 精一区二区三区| 亚洲成人动漫在线观看| 欧美日韩在线免费视频| 亚洲v日本v欧美v久久精品| 欧美性生活影院| 99re6这里只有精品视频在线观看| 国产精品无遮挡| 色综合久久久久综合| 亚洲免费资源在线播放| 国产一区视频导航| 日韩国产成人精品| 精品人伦一区二区色婷婷| 黄色日韩三级电影| 久久精子c满五个校花| 蜜臂av日日欢夜夜爽一区| 午夜av一区二区三区| 欧美一区在线视频| 久久精品国产亚洲aⅴ| 26uuu久久综合| 精品88久久久久88久久久| 高清日韩电视剧大全免费| 亚洲欧美综合在线精品| 欧美日韩精品一区二区天天拍小说| 日韩欧美卡一卡二| 欧美电影免费提供在线观看| 懂色av一区二区夜夜嗨| 亚洲猫色日本管| 日韩一区二区在线观看| 91精品在线观看入口| 成人深夜在线观看| 午夜影院久久久| 久久久精品综合| 欧美日韩一级大片网址| 国产在线国偷精品免费看| 综合色天天鬼久久鬼色| jizzjizzjizz欧美| 狠狠色狠狠色合久久伊人| 日韩理论片一区二区| 日韩视频免费直播| 一区二区三区国产精华| 日本最新不卡在线| 国产精品初高中害羞小美女文| 91精品国产一区二区| 一区二区三区在线看| 亚洲欧美综合另类在线卡通| 亚洲午夜久久久久久久久久久 | 99视频有精品| 欧美午夜精品一区二区蜜桃| 精品日韩欧美在线| 国产精品久久久久久福利一牛影视 | 亚洲成人一二三| 天天综合色天天综合色h| 久久99久久99精品免视看婷婷| 成人av在线影院| 日韩欧美高清dvd碟片| 亚洲欧美乱综合| 国内成人免费视频| 在线亚洲一区二区| 久久毛片高清国产| 日韩中文字幕亚洲一区二区va在线| 国产乱淫av一区二区三区| 色网站国产精品| 国产三级一区二区| 免费成人在线网站| 欧美日韩久久久| 亚洲欧美成人一区二区三区| 国产成人免费视频一区| 日韩一区二区电影网| 亚洲国产精品久久艾草纯爱| 成人av综合一区| 久久精品人人做| 韩国视频一区二区| 欧美一二三在线| 亚洲午夜一区二区| 91麻豆文化传媒在线观看| 欧美国产97人人爽人人喊| 国产乱码字幕精品高清av| 欧美va日韩va| 日韩专区一卡二卡| 欧美日韩一区二区电影| 亚洲激情男女视频| 色综合久久99| 亚洲欧美日韩在线播放| av电影天堂一区二区在线| 国产日本亚洲高清| 成人一区二区三区在线观看| 国产亚洲一二三区| 成a人片亚洲日本久久| 中文字幕精品一区二区精品绿巨人| 激情文学综合丁香| 精品999久久久| 国产成人激情av| 国产精品久久久久久久久动漫| 国产69精品久久久久毛片| 亚洲成人在线观看视频| 欧美日本高清视频在线观看| 亚洲成人激情自拍| 欧美一区二区免费| 九色porny丨国产精品| 国产性做久久久久久| 91麻豆文化传媒在线观看| 一区二区三区欧美亚洲| 欧美探花视频资源| 麻豆freexxxx性91精品| 久久综合九色综合97婷婷女人 | 精品欧美乱码久久久久久1区2区| 日本不卡在线视频| 久久日韩精品一区二区五区| 成人爽a毛片一区二区免费| 日韩久久一区二区| 欧美精品777| 国产精品18久久久久久久网站| 国产精品丝袜久久久久久app| 91亚洲精品一区二区乱码| 天堂va蜜桃一区二区三区 | 午夜激情综合网| 久久综合狠狠综合久久综合88| 波波电影院一区二区三区| 亚洲综合精品自拍| 久久精品视频一区二区| 欧洲色大大久久| 国产高清视频一区| 亚洲综合色噜噜狠狠| 久久久久久久久岛国免费| 欧美又粗又大又爽| 国产在线播放一区三区四| 中文幕一区二区三区久久蜜桃| 欧美亚洲国产一区二区三区va| 久久99热99| 欧美三级在线视频| 国产高清在线精品| 2023国产一二三区日本精品2022| 国产综合色精品一区二区三区| 中文子幕无线码一区tr| 99久久精品免费| 久久国产精品区| 亚洲视频你懂的| 久久午夜电影网| 欧美日韩色综合| av在线免费不卡| 国内外成人在线| 香蕉成人伊视频在线观看| 久久久精品国产免大香伊| 91麻豆精品国产自产在线观看一区 | 美女视频第一区二区三区免费观看网站| 中文字幕av在线一区二区三区| 欧美吻胸吃奶大尺度电影| 成人免费毛片嘿嘿连载视频| 日韩成人一区二区三区在线观看| 中文字幕中文在线不卡住| 久久综合999|