mysql 案例~mysql主从复制延迟处理(2)
一 簡介:今天來聊聊周期性從庫延遲的問題,是上一篇的基礎(chǔ)分析的一個場景
二 背景:近期每天的指定時間段,收到從庫延遲的報警,然后過一段時間恢復(fù).由于從庫是提供讀服務(wù)的,所以需要解決
三 分析思路:
? ? ? ? ? ? 1 周期性延時,而且全部從庫都出現(xiàn)延遲,應(yīng)該是由于主庫的DML操作引起的
? ? ? ? ? ? 2 查看主庫的慢日志記錄(我們的數(shù)據(jù)庫會每小時進行切割),也并沒有發(fā)生DML慢語句,排除因為慢sql(DML操作)導(dǎo)致的問題,主庫的DML操作如果出現(xiàn)慢語句,同步到從庫會更慢,比如update,delete語句
? ? ? ? ? ? 3 查看從庫的慢日志記錄,是否出現(xiàn)DML慢語句,并沒有出現(xiàn)
? ? ? ? ? ? 4 查看天兔平臺記錄的DML語句曲線圖,發(fā)現(xiàn)這段時間內(nèi)出現(xiàn)了大量的并發(fā)insert操作,定位到了問題
四 解決問題:
? ? ? ? ? ?1 采用mysqlbing進行指定時間段內(nèi)的分析
? ? ? ? ? ? mysqlbinlog --no-defaults --start-datetime='2017-11-17 07:50:00' --stop-datetime='2017-11-17 08:20:00' --base64-output=decode-rows -vv binlogname > result.txt
? ? ? ? ? ?2 運用AWK工具進行這段時間內(nèi)的增刪查改統(tǒng)計
? ? ? ? ? ?awk '/###/ {if($0~/UPDATE|INSERT|DELETE/)count[$2" "$NF]++}END{for(i in count) print i,"\t",count[i]}'? 文件名| column -t | sort -k3n
? ? ? ? ? ?會統(tǒng)計 庫+表 增刪查改次數(shù) 并進行排序
? ? ? ? ? 3 根據(jù)結(jié)果,發(fā)現(xiàn)了 insert最高的一張表,然后和運維確認業(yè)務(wù)IP,和研發(fā)進行溝通,得知業(yè)務(wù)一段時間進行集中處理,導(dǎo)致了上述情況。
? ? ? ? ? 4 可以先根據(jù)pt-iopfile進行定位,可以清晰的定位到表,具體為pt-iopfile -p pid,針對mysql文件具體IO進行分析,對于集中表的業(yè)務(wù),能快速具體進行定位
五? 此次排查順利結(jié)束
六 解決方式:
? ? ? 1 研發(fā)進行業(yè)務(wù)優(yōu)化,減少DML最高的表的處理
? ? ? 2 不同業(yè)務(wù)庫進行遷移,減少單臺DB的壓力
轉(zhuǎn)載于:https://www.cnblogs.com/danhuangpai/p/7851226.html
總結(jié)
以上是生活随笔為你收集整理的mysql 案例~mysql主从复制延迟处理(2)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 华为笔记本matebook 14怎么开启
- 下一篇: JS以及CSS对页面的阻塞
