精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

麻了,一個操作把MySQL主從復制整崩了

數據庫 MySQL
我們定位到原來是由于大事務+blob字段大致binlog非常大,最終我們采用了修改業務代碼,將blob字段單獨拆到一張表中解決。所以,在設計開發過程中,要盡量避免大事務,同時在數據庫建模的時候特別考慮將blob字段獨立成表。

前言

最近公司某項目上反饋mysql主從復制失敗,被運維部門記了一次大過,影響到了項目的驗收推進,那么究竟是什么原因導致的呢?而主從復制的原理又是什么呢?本文就對排查分析的過程做一個記錄。

主從復制原理

我們先來簡單了解下MySQL主從復制的原理。

圖片

  1. 主庫master 服務器會將 SQL 記錄通過 dump 線程寫入到 二進制日志binary log 中;
  2. 從庫slave 服務器開啟一個 io thread 線程向服務器發送請求,向 主庫master 請求 binary log。主庫master 服務器在接收到請求之后,根據偏移量將新的 binary log 發送給 slave 服務器。
  3. 從庫slave 服務器收到新的 binary log 之后,寫入到自身的 relay log 中,這就是所謂的中繼日志。
  4. 從庫slave 服務器,單獨開啟一個 sql thread 讀取 relay log 之后,寫入到自身數據中,從而保證主從的數據一致。

以上是MySQL主從復制的簡要原理,更多細節不展開討論了,根據運維反饋,主從復制失敗主要在IO線程獲取二進制日志bin log超時,一看主數據庫的binlog日志竟達到了4個G,正常情況下根據配置應該是不超過300M。

圖片

binlog寫入機制

想要了解binlog為什么達到4個G,我們來看下binlog的寫入機制。

binlog的寫入時機也非常簡單,事務執行過程中,先把日志寫到 binlog cache ,事務提交的時候,再把binlog cache寫到binlog文件中。因為一個事務的binlog不能被拆開,無論這個事務多大,也要確保一次性寫入,所以系統會給每個線程分配一個塊內存作為binlog cache。

圖片

  1. 上圖的write,是指把日志寫入到文件系統的page cache,并沒有把數據持久化到磁盤,所以速度比較快
  2. 上圖的fsync,才是將數據持久化到磁盤的操作, 生成binlog日志中

生產上MySQL中binlog中的配置max_binlog_size為250M, 而max_binlog_size是用來控制單個二進制日志大小,當前日志文件大小超過此變量時,執行切換動作。,該設置并不能嚴格控制Binlog的大小,尤其是binlog比較靠近最大值而又遇到一個比較大事務時,為了保證事務的完整性,可能不做切換日志的動作,只能將該事務的所有$QL都記錄進當前日志,直到事務結束。一般情況下可采取默認值。

所以說懷疑是不是遇到了大事務,因而我們需要看看binlog中的內容具體是哪個事務導致的。

查看binlog日志

我們可以使用mysqlbinlog這個工具來查看下binlog中的內容,具體用法參考官網:https://dev.mysql.com/doc/refman/8.0/en/mysqlbinlog.html。

  1. 查看binlog日志
./mysqlbinlog --no-defaults --base64-output=decode-rows -vv /mysqldata/mysql/binlog/mysql-bin.004816|more
  1. 以事務為單位統計binlog日志文件中占用的字節大小
./mysqlbinlog --no-defaults --base64-output=decode-rows -vv /mysqldata/mysql/binlog/mysql-bin.004816|grep GTID -B1|grep '^# at' | awk '{print $3}' | awk 'NR==1 {tmp=$1} NR>1 {print ($1-tmp, tmp, $1); tmp=$1}'|sort -n -r|more

圖片

生產中某個事務竟然占用4個G。

  1. 通過start-position和stop-position統計這個事務各個SQL占用字節大小
./mysqlbinlog --no-defaults --base64-output=decode-rows --start-positinotallow='xxxx' --stop-positinotallow='xxxxx' -vv /mysqldata/mysql/binlog/mysql-bin.004816 |grep '^# at'| awk '{print $3}' | awk 'NR==1 {tmp=$1} NR>1 {print ($1-tmp, tmp, $1); tmp=$1}'|sort -n -r|more

圖片

發現最大的一個SQL竟然占用了32M的大小,那超過10M的大概有多少個呢?

  1. 通過超過10M大小的數量
./mysqlbinlog --no-defaults --base64-output=decode-rows --start-positinotallow='xxxx' --stop-positinotallow='xxxxx' -vv /mysqldata/mysql/binlog/mysql-bin.004816|grep '^# at' | awk '{print $3}' | awk 'NR==1 {tmp=$1} NR>1 {print ($1-tmp, tmp, $1); tmp=$1}'|awk '$1>10000000 {print $0}'|wc -l

圖片

統計結果顯示竟然有200多個,毛估一下,也有近4個G了

  1. 根據pos, 我們看下究竟是什么SQL導致的
./mysqlbinlog --no-defaults --base64-output=decode-rows --start-positinotallow='xxxx' --stop-positinotallow='xxxxx' -vv /mysqldata/mysql/binlog/mysql-bin.004816|grep '^# atxxxx' -C5| grep -v '###' | more

圖片

根據sql,分析了下,這個表正好有個blob字段,統計了下blob字段總合大概有3個G大小,然后我們業務上有個導入操作,這是一個非常大的事務,會頻繁更新這表中記錄的更新時間,導致生成binlog非常大。

問題: 明明只是簡單的修改更新時間的語句,壓根沒有動blob字段,為什么生產的binlog這么大?因為生產的binlog采用的是row模式。

binlog的模式

binlog日志記錄存在3種模式,而生產使用的是row模式,它最大的特點,是很精確,你更新表中某行的任何一個字段,會記錄下整行的內容,這也就是為什么blob字段都被記錄到binlog中,導致binlog非常大。此外,binlog還有statement和mixed兩種模式。

  1. STATEMENT模式 ,基于SQL語句的復制
  • 優點: 不需要記錄每一行數據的變化,減少binlog日志量,節約IO,提高性能。
  • 缺點: 由于只記錄語句,所以,在statement level下 已經發現了有不少情況會造成MySQL的復制出現問題,主要是修改數據的時候使用了某些定的函數或者功能的時候會出現。
  1. ROW模式,基于行的復制

5.1.5版本的MySQL才開始支持,不記錄每條sql語句的上下文信息,僅記錄哪條數據被修改了,修改成什么樣了。

  • 優點: binlog中可以不記錄執行的sql語句的上下文相關的信息,僅僅只需要記錄那一條被修改。所以rowlevel的日志內容會非常清楚的記錄下每一行數據修改的細節。不會出現某些特定的情況下的存儲過程或function,以及trigger的調用和觸發無法被正確復制的問題
  • 缺點: 所有的執行的語句當記錄到日志中的時候,都將以每行記錄的修改來記錄,會產生大量的日志內容。
  1. MIXED模式

從5.1.8版本開始,MySQL提供了Mixed格式,實際上就是Statement與Row的結合。

在Mixed模式下,一般的語句修改使用statment格式保存binlog。如一些函數,statement無法完成主從復制的操作,則采用row格式保存binlog。

總結

最終分析下來,我們定位到原來是由于大事務+blob字段大致binlog非常大,最終我們采用了修改業務代碼,將blob字段單獨拆到一張表中解決。所以,在設計開發過程中,要盡量避免大事務,同時在數據庫建模的時候特別考慮將blob字段獨立成表。

責任編輯:武曉燕 來源: JAVA旭陽
相關推薦

2024-11-11 14:57:56

JWTSession微服務

2021-06-08 07:48:27

MySQL主從配置

2024-03-01 18:33:59

MySQL節點數據

2024-07-04 08:00:24

2025-02-10 10:55:16

2023-02-27 07:33:14

MySQL數據庫服務器

2020-11-16 09:30:11

Redis網絡配置

2023-09-27 08:01:29

GreatSQL項目運維

2023-03-19 22:38:12

邏輯復制PostgreSQL

2023-03-19 11:53:27

2023-07-03 08:57:45

Master服務TCP

2023-09-24 14:32:15

2020-03-12 18:56:06

MySQL主從復制數據庫

2022-12-20 08:46:41

MySQL主從復制

2025-01-15 15:47:36

2017-10-11 15:40:20

MySQL主從復制拓撲結構

2017-09-05 16:00:49

MySQL主從復制備份

2019-06-17 08:21:06

RPC框架服務

2021-07-01 18:55:39

主從復制Redis

2021-03-19 11:33:42

MySQL數據庫備份
點贊
收藏

51CTO技術棧公眾號

欧洲成人午夜免费大片| av中文字幕不卡| 中文字幕在线成人| 三年中文在线观看免费大全中国| 日本欧美电影在线观看| 99re成人精品视频| 国产精品午夜国产小视频| 精品欧美一区二区久久久久| 日韩高清在线免费观看| 亚洲欧洲日产国产综合网| 666精品在线| 无码日韩精品一区二区| 91tv官网精品成人亚洲| 日韩av综合中文字幕| 亚洲另类第一页| 狠狠操一区二区三区| 国产999精品久久| 日本中文字幕久久看| 中文乱码人妻一区二区三区视频| 日韩免费小视频| 亚洲亚洲人成综合网络| 亚洲国产一区在线| 日本电影一区二区在线观看| 国产一区二区电影| 国产精品久久久999| 国产大片中文字幕| 亚洲成人一区| 中文字幕亚洲图片| 在线免费看黄视频| 中国字幕a在线看韩国电影| 韩国理伦片一区二区三区在线播放| 97久久久免费福利网址| 日韩av网站在线播放| 亚洲老女人视频免费| 精品国产免费久久 | 国产乱码午夜在线视频| 中文字幕日韩欧美一区二区三区| 免费在线观看一区二区| 少妇高潮久久久| 国模一区二区三区白浆| 91精品免费久久久久久久久| 成年人晚上看的视频| 麻豆成人精品| 欧美一区二区三区图| www.av麻豆| 亚洲精品影院在线观看| 欧美黑人性猛交| 免费人成年激情视频在线观看| 羞羞色午夜精品一区二区三区| 中文字幕亚洲色图| 国产日韩精品中文字无码| 欧美码中文字幕在线| 一区二区三区视频免费在线观看 | 免费成人网www| 精品视频在线播放色网色视频| 涩视频在线观看| www.成人网| 亚洲激情小视频| 日本少妇xxxx| 美女久久久久| 在线免费观看羞羞视频一区二区| 国产综合精品久久久久成人av| 国产亚洲电影| 综合136福利视频在线| 国产黄色片在线| 亚洲精品电影| 欧美激情亚洲另类| 在线观看黄网站| 视频一区二区三区入口| www高清在线视频日韩欧美| 五月天视频在线观看| 四虎国产精品免费久久5151| 91麻豆精品久久久久蜜臀| www.久久com| 五月亚洲婷婷| 日韩av最新在线| www久久久久久久| 一个色综合网| 97国产精品免费视频| 中文字幕高清在线免费播放| 麻豆精品一区二区| 91中文字精品一区二区| 五月婷婷丁香六月| 欧美国产成人在线| 久操手机在线视频| 26uuu亚洲电影| 欧美男人的天堂一二区| 中文在线字幕观看| 精品成人影院| 欧美黑人巨大xxx极品| 二区视频在线观看| 久久97超碰色| 久久av免费观看| 久草免费在线观看| 亚洲国产成人91porn| 异国色恋浪漫潭| a级片在线免费观看| 91福利视频网站| www.玖玖玖| 国产精品亚洲成在人线| 精品国产乱码久久| 综合 欧美 亚洲日本| 亚洲高清激情| 欧美—级a级欧美特级ar全黄| 亚洲天堂一区在线| 国产麻豆视频精品| 人禽交欧美网站免费| 男女视频在线| 欧美喷潮久久久xxxxx| 午夜男人的天堂| 亚洲成人三区| 国产伦精品一区二区三区精品视频 | 亚洲久久久久| 国产精品夫妻激情| 无码国产精品一区二区免费16| 中文字幕一区二区三区四区 | 中文另类视频| 欧美精品一区二区三区很污很色的| 一级特黄曰皮片视频| 99国产精品99久久久久久粉嫩| 欧美老女人性视频| 最近中文字幕在线免费观看 | 欧美不卡一区二区三区四区| 日韩影视一区二区三区| 亚洲欧美久久| 国产日韩亚洲精品| 男女免费观看在线爽爽爽视频| 欧美日韩国产一区| 久久视频精品在线观看| 国产精品婷婷| 久久99精品久久久久久久青青日本| 国产精品刘玥久久一区| 欧美日本在线播放| 2019男人天堂| 日本不卡的三区四区五区| 女人一区二区三区| 在线手机中文字幕| 日韩av综合网站| 国产三级av片| 久久久三级国产网站| 国产三区在线视频| 亚洲婷婷伊人| 日本国产一区二区三区| 亚洲av成人精品日韩在线播放| 亚洲一区二区三区四区五区中文| 在线成人精品视频| 牛牛影视一区二区三区免费看| 欧美大片免费看| 亚洲不卡免费视频| 亚洲制服欧美中文字幕中文字幕| 欧美色图校园春色| 欧美日韩福利| 国产精品免费在线播放| av电影在线地址| 亚洲精品国产精品国自产在线| 中文字幕亚洲精品在线| 久久这里只有精品6| 激情综合网婷婷| 青青草91久久久久久久久| 国产精品老女人精品视频| 在线免费观看黄色| 这里只有精品电影| 欧美极品aaaaabbbbb| 成人午夜av在线| 欧美日韩在线视频一区二区三区| 久久综合欧美| 国产欧美日韩免费看aⅴ视频| 韩国av网站在线| 欧美xxxxxxxx| 久久国产黄色片| 国产精品卡一卡二| 波多野结衣电影免费观看| 亚洲黄色大片| 日韩在线观看电影完整版高清免费| 激情久久99| 久久99国产精品自在自在app| 三级视频在线看| 91国偷自产一区二区三区观看| 久久国产高清视频| 成人免费毛片嘿嘿连载视频| 欧美精品第三页| 亚洲国产精品成人| 精品视频一区二区| 亚洲精品一区二区在线播放∴| 欧美激情综合亚洲一二区| 黄色网址在线播放| 亚洲国产一区二区三区青草影视| 黄色av网址在线观看| 日韩黄色免费电影| av片在线免费| 日韩欧美三级| 国产一区二区黄色| 欧美亚洲人成在线| 91精品国产自产91精品| 国产99久一区二区三区a片| 亚洲成人在线免费| 午夜国产福利视频| 91亚洲精品乱码久久久久久蜜桃| 三上悠亚在线一区| 一本色道久久综合| 欧美 国产 精品| 国产99久久| 国精产品99永久一区一区| 亚洲91在线| 国产精品69av| av日韩国产| 欧美成人在线影院| 草碰在线视频| 欧美日本在线观看| 日韩精品成人免费观看视频| 亚洲一区二区三区四区不卡| 九九热久久免费视频| 久久免费的精品国产v∧| 欧美熟妇精品一区二区| 蜜桃视频在线一区| 黄色片久久久久| 亚洲国产专区校园欧美| 最新中文字幕久久| 日韩毛片视频| 欧美亚洲国产免费| 群体交乱之放荡娇妻一区二区| 亚洲一区二区三区成人在线视频精品| 成人线上视频| 91av视频导航| 国产99在线观看| 久久久久久有精品国产| 制服丝袜在线播放| www.美女亚洲精品| caoporn国产精品免费视频| 亚洲精品在线不卡| 四虎电影院在线观看| 色综合久久久网| 日韩欧美激情视频| 亚洲一区二区欧美日韩| 中文字幕在线观看成人| 亚洲欧美另类在线| 成年人午夜剧场| www.一区二区| 4438x全国最大成人| 国产一二精品视频| 超碰91在线播放| 国产一区二区三区在线观看免费 | 国产精品白丝av| 色综合五月婷婷| 国产麻豆视频一区二区| 中文字幕永久免费| 成人激情小说网站| 五十路六十路七十路熟婆| jiyouzz国产精品久久| 丝袜熟女一区二区三区| 成人av资源网站| 亚洲天堂美女视频| 91丨porny丨户外露出| 泷泽萝拉在线播放| 国产亚洲精品7777| 久久精品国产亚洲AV成人婷婷| 成人免费在线视频| www.超碰在线观看| 亚洲国产成人高清精品| www..com国产| 欧美日韩你懂得| 国产女人高潮时对白| 一区二区三区四区中文字幕| 国产av无码专区亚洲av毛网站| 一区二区三区色| 青青操免费在线视频| 欧美日韩在线免费| 中文字幕视频免费观看| 4438x成人网最大色成网站| 成人av手机在线| 国产视频亚洲视频| 中文字幕日本在线| 欧美高清在线观看| 亚洲人成午夜免电影费观看| 国产精品成人aaaaa网站| av在线亚洲一区| 国产精品一区二区三区不卡| 蜜桃国内精品久久久久软件9| 致1999电视剧免费观看策驰影院| 欧美高清不卡| 国产男女激情视频| 国内精品视频666| 超碰男人的天堂| 国产精品女同一区二区三区| 久久精品国产亚洲AV无码男同 | 国产成人在线免费看| 美女网站一区二区| 精品伦一区二区三区| 国产三级一区二区| 久久久久久久久久一区二区三区| 一本到不卡精品视频在线观看| 91久久久久久久久久久久| 欧美午夜精品久久久久久浪潮| 久久久久噜噜噜亚洲熟女综合| 欧美日韩国产中文精品字幕自在自线 | 成人在线免费电影| 欧美激情视频一区二区| www.国产精品| 精品国产aⅴ麻豆| 亚洲精品888| 性生交免费视频| 99久久精品国产导航| 破处女黄色一级片| 欧美专区在线观看一区| 黄色www视频| 精品国产乱码久久久久久影片| 免费成人av电影| 久久久久女教师免费一区| 日韩成人综合网| 欧洲精品码一区二区三区免费看| 亚洲国产精品一区| 欧美一级特黄aaa| 国产欧美视频在线观看| 亚洲精品视频在线观看免费视频| 欧美一区二区视频在线观看2022| 国产高清av在线| 日韩在线视频播放| 老司机2019福利精品视频导航 | 成人情趣视频网站| 久久亚洲中文字幕无码| 国产精品一区在线观看乱码| 粉嫩精品久久99综合一区| 欧美性高跟鞋xxxxhd| 婷婷伊人综合中文字幕| 久久久久久久97| 视频欧美一区| 久久久99精品视频| 韩国午夜理伦三级不卡影院| 调教驯服丰满美艳麻麻在线视频| 懂色aⅴ精品一区二区三区蜜月| 蜜桃视频在线观看www| 欧美激情国内偷拍| 秋霞影院一区| 日本香蕉视频在线观看| 国产一本一道久久香蕉| 国产精品视频一区二区三| 制服丝袜av成人在线看| 国产欧美黑人| 91中文在线观看| 午夜精品国产| 亚洲911精品成人18网站| 一区二区三区国产精品| 精品人妻aV中文字幕乱码色欲| 美女精品久久久| 亚洲日本va| 免费无码毛片一区二三区| 不卡一区二区三区四区| 亚洲日本韩国在线| 亚洲人成伊人成综合网久久久 | 91丨九色丨国产| 欧美日韩国产在线一区| 国产艳妇疯狂做爰视频| 午夜精品一区二区三区电影天堂| 少妇高潮一区二区三区69| 欧美亚洲日本网站| 精品视频黄色| 日韩av一卡二卡三卡| 一区二区在线观看不卡| 人妻夜夜爽天天爽| 日韩av大片免费看| 欧美一二区在线观看| 三级av免费看| 亚欧色一区w666天堂| 巨骚激情综合| 91在线观看免费| 综合色就爱涩涩涩综合婷婷| 成人在线观看黄| 中文字幕视频一区二区三区久| 精品黑人一区二区三区在线观看 | 国产一级精品毛片| 久久久国产精彩视频美女艺术照福利| 亚洲天堂av资源在线观看| 日本a在线免费观看| 国产在线精品国自产拍免费| 国产精品白嫩白嫩大学美女| 亚洲国产成人精品一区二区 | 天堂在线资源网| 国产精品色视频| 国产精品v日韩精品v欧美精品网站 | 9999在线精品视频| 成人午夜免费在线| 欧美激情一区二区三区全黄| 精品久久久中文字幕人妻| 欧美一级高清免费播放| 亚洲成人一区| 欧美亚一区二区三区| 91精品国产欧美日韩| 瑟瑟视频在线看| 精品国产一区二区三区在线| 99re亚洲国产精品| 国产又大又黄的视频| 91精品国产乱码久久久久久蜜臀| 欧美xxav| 亚洲av无码成人精品国产 | 天天在线女人的天堂视频| 91精品视频专区| 久久久噜噜噜| 国产精品第九页| 久久精品国产欧美亚洲人人爽 | 国产欧美综合一区|