運維工程師之-MySQL的故障問題總結(jié)

1. 故障類問題

你在日常工作中遇到過什么故障眠冈?
你在日常工作中處理過什么故障?
你平常工作都干什么活缎讼?

故障01:mysql時軟件版本選擇錯誤

每一個故事的背后都有一個事故,每個故障總結(jié)一個故事

軟件版本  64位 32位選擇錯誤

故障02: 安裝故障

1.用戶沒創(chuàng)建 權(quán)限沒給

2.初始化 mysqld mysql_install_db

本地的mariadb沒卸載纵菌, /etc/my.cnf沒有刪掉 ,初始化時會導(dǎo)致失敗

3.配置文件實際情況不對應(yīng)(basedir , datadir)

此處該加上一個勵志的故事,融入個人情感休涤,剛開始學(xué)mysql的不容易與堅持

4.重啟咱圆,數(shù)據(jù)盤沒有掛載
/dev/sdb ----> /data 沒有自動掛載 導(dǎo)致mysql啟動不了
排查思路: 日志文件中的錯誤信息笛辟,當(dāng)時對日志不是特別熟

5.mysql升級失敗 5.5 --->8.0
當(dāng)時不清楚mysql的這些原因,沒有注意序苏,領(lǐng)導(dǎo)讓測試8.0的環(huán)境
我就下載了一個8.0.11版本手幢,我安裝到了測試服務(wù)器,原生產(chǎn)核心功能表的一部分?jǐn)?shù)據(jù)通過MDP工具導(dǎo)出來了忱详,恢復(fù)到測試中围来,然后應(yīng)用測試的時候直接導(dǎo)致無法連接,通過查看官方文檔8.0的那個<what is new?>,才明白了不能大版本升級

排錯思路:

主要原因就是版本的特性原因匈睁,8.0不升級數(shù)據(jù)字典,监透,,8.0的密碼和用戶管理發(fā)生了巨大變化 先升級到5.7 再升級8.0,sql_mode航唆,數(shù)據(jù)類型差別

這個問題當(dāng)時卡了一個小時胀蛮,第二周就要上線了,因為也沒人協(xié)助我糯钙,從網(wǎng)上一直搜查資料一直熬到快三點了才解決粪狼,想想這幾年剛大學(xué)畢業(yè),一直覺得差其他人好多的任岸,所以自己就特別要強再榄,不會的東西就一直搞搞搞,現(xiàn)在想想享潜,覺得自己做的無怨無悔困鸥,這個行業(yè)帶給我很多好的結(jié)果,我就認(rèn)為我自己肯定行剑按,自從經(jīng)歷了那么多的熬夜查文檔疾就,解決問題的那個時刻真的讓我就特別的開心,現(xiàn)在出現(xiàn)故障慢慢的就不怵了

故障03:數(shù)據(jù)庫連接不上

1.網(wǎng)絡(luò)不通吕座,防火墻

1.網(wǎng)絡(luò)不通:
    網(wǎng)線壞了(老鼠咬斷了  機柜壓斷了  被人拔了 哈哈...)
    網(wǎng)卡  bond 交換機  路由器  回路 網(wǎng)絡(luò)流量滿負荷
    解決思路:  監(jiān)控

2.防火墻:敲錯防火墻規(guī)則虐译,上來寫錯了一條規(guī)則瘪板,導(dǎo)致內(nèi)網(wǎng)服務(wù)器訪問不了了
        不過幸虧是在測試環(huán)境做的吴趴,有個好習(xí)慣就是任何調(diào)優(yōu)配置都先在測試環(huán)境中配置

3.沒啟動 端口 IP

4.應(yīng)用端客戶端工具版本過低
https://downloads.mysql.com/archives/

5.連接數(shù)(499)
    redis雪崩 穿透
    日志
    show processlist;

故障問題04: 配置文件問題


故障問題05: 多實例


故障問題06: sql_mode(groupby,時間類型) 遷移升級


故障問題07: 數(shù)據(jù)類型


故障問題08: 字符集:亂碼


故障問題09: 校對規(guī)則問題


故障問題10: update問題 binlog2sql


故障問題11: DDL, 數(shù)據(jù)庫夯住了

show processlist;
pt-osc

故障問題12: select查詢語句慢

頭一天好好的,第二天就慢了 
optimize table t1;

故障問題13: 慢語句處理侮攀,同一個存儲過程一天內(nèi)執(zhí)行了幾十次

slowlog 抓到是一個存儲過程锣枝,執(zhí)行幾十次

故障問題14: delete

binlog2sql 翻轉(zhuǎn) delete 替換為update

故障問題15: 索引問題:

榮譽索引過多,索引列比較長(前綴)兰英,聯(lián)合索引(索引覆蓋長度撇叁,順序)
slowlog ----> explai ---->索引

故障問題16: 存儲引擎

1. 表空間遷移
2. 每周六全備,其他時候binlog增量.
    異常斷電,binlog損壞,ibdata1損壞
3. 碎片整理     
    alter table t1 engine innodb;
4. 鎖等待  
5. 幻讀,不可重復(fù)讀

故障問題17:日志故障

1.reset master rm -rf 導(dǎo)致主從IO線程故障
   數(shù)據(jù)庫如果出現(xiàn)損壞 無法完整恢復(fù)
   
2. gtid : --skip-gtids 導(dǎo)致數(shù)據(jù)無法恢復(fù)

3. slowlog

故障問題18: 備份恢復(fù)

1. mysqldump 加了 --set-gtid-purged=off,主從構(gòu)建不成功
2. --max_allowed_packet,大表備份時報錯
3. -E -R --triggers沒加
4. 增量合并失敗.

故障問題19: 主從

1.主從故障: IO SQL show slave  status \G
2.主從延時: 延時時間 日志量差異
3.主從不一致: 從庫宕機 pt工具
4.延時從庫 解決邏輯故障
5.過濾復(fù)制 只復(fù)制了部分庫 沒有復(fù)制mysql,查詢時連接不上或沒有權(quán)限
6.gtid復(fù)制搭建

故障問題20: 高可用MHA

只有vip功能 缺了binlogserver 故障提醒功能
MHA+keepalive 權(quán)重問題

故障問題21: 分布式Mycat

1.分片方式,分片策略設(shè)計不合理
2.跨分片join 全局表 ER表

故障問題:22: 優(yōu)化

1. innodb_flush_log_at_trx_commit=0
2. sync_binlog=0
3. innodb_flush_method=fsync  占用大量的額外內(nèi)存畦贸,
   配合固態(tài)硬盤使用 O_direct

2. 架構(gòu)類

1. 一主1從+讀寫分離proxysql maxscale (50G)
8核32G
閾值:
并發(fā)連接 800-1000
并發(fā)查詢 5W QPS
并發(fā)事物 300 TPS
2.一主3從+讀寫分離+延時從 (100-200G)
8核32G
閾值:
并發(fā)連接 800-1000
并發(fā)查詢 8W QPS
并發(fā)事物 200 TPS
3.一主多從+級聯(lián)復(fù)制+過濾復(fù)制 (300-500G)
8核32G
閾值:
并發(fā)連接 800-1000
并發(fā)查詢 15-20W QPS
并發(fā)事物 200 TPS
4.MHA+ProxySQL 1主3從
1主2從做MHA+proxySQL 1從做容災(zāi)
16核64G*3 + 8核16G

閾值:
并發(fā)連接 1500-2000
并發(fā)查詢 12W QPS
并發(fā)事物 400 TPS

此架構(gòu)適合電商平臺陨闹,物流
2T數(shù)據(jù)
5. PXC + proxySQL(MGC+maxscale)
16核64G*3 + 8核16G
閾值:
并發(fā)連接 1500-2000
并發(fā)查詢 12W QPS
并發(fā)事物 400 TPS

此架構(gòu)適合電商平臺楞捂,物流 
2T數(shù)據(jù)
6.Mycat + MHA(PXC)*3 高可用分布式集群
16核128G*7
閾值:
并發(fā)連接 3000-5000
并發(fā)查詢 20W QPS
并發(fā)事物 800-1000 TPS

教育行業(yè)(大數(shù)據(jù)平臺) 
9T數(shù)據(jù)
7.redis sentinel+Docker
redis Cluster + k8s
8. MongDB replication
保險類公司
16核 256內(nèi)存 + 40T*4臺
20T左右數(shù)據(jù) +保單
9. MongDB Sharding + HASH
數(shù)據(jù)在PB級別: 共享單車 百度地圖 京東 360 
16核128G*9臺*40T

3. 優(yōu)化類

鎖等待
索引+slow
innoDB換成TokuDB(MyROCKS)

4. 升級遷移

1. zabbix
2. MongDB Sharding + HASH
數(shù)據(jù)在PB級別: 共享單車 百度地圖 京東 360 
3年-5年的某銀行流水 30T
16核128G*9臺*40T

5. 客觀面試題:

  1. 你們公司架構(gòu)是啥樣的,做的什么業(yè)務(wù),數(shù)據(jù)量,QPS,TPS?
  2. 你們公司數(shù)據(jù)庫都用了那些產(chǎn)品,分別架構(gòu)了什么服務(wù)?
  3. 你處理過什么故障嗎?
  4. 你覺得我們公司需要招聘什么員工? 你覺得你是什么樣的人? 你覺得我們?yōu)槭裁匆心?
  5. 你對SQL語句了解到什么程度?
  6. 你對索引了解嗎? Btree查找算法原理是什么? 聚集索引和輔助索引區(qū)別?你怎么理解的索引樹高度?
  7. 請你介紹下你了解的存儲引擎類型?
  8. 請說明數(shù)據(jù)InnoDB,MyRocks,TokuDB區(qū)別?
  9. InnoDB核心特性:事務(wù),ACID,鎖,隔離級別,redo,undo,MVCC ,幻讀,臟讀,不可重復(fù)讀,碎片整理怎么做的?
  10. 二進制日志格式都有哪些? 你對二進制日志操作過什么?
  11. 你們公司的備份策略怎么設(shè)計的? 你備份一次多長時間? MDP 怎么實現(xiàn)的熱備功能,XBK備份原理是什么?
    全備很大,一個非常小的表損壞了,你的快速恢復(fù)思路是什么?
  12. 主從復(fù)制原理,主從怎么監(jiān)控,怎么排查故障,怎么排查延時問題.你對降低主從延時有什么好的建議和方案?
    second behind master 怎么算出來?
    延時從庫是干什么用的? 半同步復(fù)制原理? 增強半同步,無損復(fù)制原理,MGR組復(fù)制原理? Paxos原理?
    GTID復(fù)制和傳統(tǒng)復(fù)制的區(qū)別?
  13. MHA Failover原理,PXC工作原理?
  14. 你對分布式架構(gòu)的理解?
  15. Redis: 持久化方式,數(shù)據(jù)類型,事務(wù)進行說明?
  16. redis sentinel 高可用集群的工作原理,redis Cluster的工作原理?
  17. MongoDB replicationSet工作原理(raft分布式一致協(xié)議),Sharding CLuster工作原理.
    18.你都做過哪些優(yōu)化?
  18. PT工具都用戶哪些 ?
  19. 用過哪些壓力測試工具?
  20. 你對Oracle(安裝,網(wǎng)絡(luò)管理,文件管理,表空間,備份恢復(fù),DG,RAC)了解嗎?Pg(安裝,基本管理,備份恢復(fù),集群)了解嗎?
  21. 你對TiDB了解嗎?
  22. 你對云數(shù)據(jù)庫了解嗎?
  23. 你對Docker,K8s了解嗎?
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市趋厉,隨后出現(xiàn)的幾起案子寨闹,更是在濱河造成了極大的恐慌,老刑警劉巖君账,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件繁堡,死亡現(xiàn)場離奇詭異,居然都是意外死亡乡数,警方通過查閱死者的電腦和手機椭蹄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來净赴,“玉大人绳矩,你說我怎么就攤上這事〗俨啵” “怎么了埋酬?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長烧栋。 經(jīng)常有香客問我写妥,道長,這世上最難降的妖魔是什么审姓? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任珍特,我火速辦了婚禮,結(jié)果婚禮上魔吐,老公的妹妹穿的比我還像新娘扎筒。我一直安慰自己,他們只是感情好酬姆,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布嗜桌。 她就那樣靜靜地躺著厉亏,像睡著了一般围肥。 火紅的嫁衣襯著肌膚如雪盅弛。 梳的紋絲不亂的頭發(fā)上懂衩,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天哑舒,我揣著相機與錄音抠藕,去河邊找鬼橡娄。 笑死拔莱,一個胖子當(dāng)著我的面吹牛立美,可吹牛的內(nèi)容都是我干的匿又。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼建蹄,長吁一口氣:“原來是場噩夢啊……” “哼碌更!你這毒婦竟也來了裕偿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤痛单,失蹤者是張志新(化名)和其女友劉穎击费,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桦他,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡蔫巩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了快压。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片圆仔。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖蔫劣,靈堂內(nèi)的尸體忽然破棺而出坪郭,到底是詐尸還是另有隱情,我是刑警寧澤脉幢,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布歪沃,位于F島的核電站,受9級特大地震影響嫌松,放射性物質(zhì)發(fā)生泄漏沪曙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一萎羔、第九天 我趴在偏房一處隱蔽的房頂上張望液走。 院中可真熱鬧,春花似錦贾陷、人聲如沸缘眶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽巷懈。三九已至,卻和暖如春慌洪,著一層夾襖步出監(jiān)牢的瞬間顶燕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工蒋譬, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留割岛,地道東北人愉适。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓犯助,卻偏偏與公主長得像,于是被迫代替她去往敵國和親维咸。 傳聞我的和親對象是個殘疾皇子剂买,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容