午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > MySQL DeadLock故障排查全過程記錄

MySQL DeadLock故障排查全過程記錄

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

【作者】

劉博:攜程技術保障中心數據庫高級經理,主要關注Sql server和Mysql的運維和故障處理。

【環境】

版本號:5.6.21

隔離級別:REPEATABLE READ

【問題描述】

接到監控報警,有一個線上的應用DeadLock報錯,每15分鐘會準時出現,報錯統計如下圖:


登錄Mysql服務器查看日志:

mysql> show engine innodb status\G

*** (1) TRANSACTION:

TRANSACTION 102973, ACTIVE 11 sec starting index read

mysql tables in use 3, locked 3

LOCK WAIT 4 lock struct(s), heap size 1136, 3 row lock(s)

MySQL thread id 6, OS thread handle 140024996574976, query id 83 localhost us updating

UPDATE TestTable

SET column1 = 1,

Column2 = sysdate(),

Column3= '026'

Column4 = 0

AND column5 = 485

AND column6 = 'SEK'

*** (1) WAITING FOR THIS LOCK TO BE GRANTED:

RECORD LOCKS space id 417 page no 1493 n bits 1000 index idx_column6 of table test.TestTable trx id 102973 lock_mode X waiting

Record lock, heap no 859 PHYSICAL RECORD: n_fields 2; compact format; info bits 0

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007e1452; asc ~ R;;

*** (2) TRANSACTION:

TRANSACTION 102972, ACTIVE 26 sec starting index read

mysql tables in use 3, locked 3

219 lock struct(s), heap size 24784, 2906 row lock(s), undo log entries 7

MySQL thread id 5, OS thread handle 140024996841216, query id 84 localhost us updating

UPDATE TestTable

SET Column1 = 1,

Column2 = sysdate(),

Column3 = '026'

Column4 = 0

AND Column5 = 485

AND Column6 = 'SEK'

*** (2) HOLDS THE LOCK(S):

RECORD LOCKS space id 417 page no 1493 n bits 1000 index idx_Column6 of table test.TestTable trx id 102972 lock_mode X

Record lock, heap no 1 PHYSICAL RECORD: n_fields 1; compact format; info bits 0

0: len 8; hex 73757072656d756d; asc supremum;;


Record lock, heap no 859 PHYSICAL RECORD: n_fields 2; compact format; info bits 0

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007e1452; asc ~ R;;
*** (2) WAITING FOR THIS LOCK TO BE GRANTED:

RECORD LOCKS space id 601 page no 89642 n bits 1000 index idx_column6 of table test.TestTable trx id 32231892482 lock_mode X locks rec but not gap waiting

Record lock, heap no 38 PHYSICAL RECORD: n_fields 2; compact format; info bits 0

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007eea14; asc ~ ;;

大致一看,更新同一索引的同一行,應該是一個Block,報TimeOut的錯才對,怎么會報DeadLock?

【初步分析】

先分析下(2) TRANSACTION,TRANSACTION 32231892482。

等待的鎖信息為:

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007eea14; asc

持有的鎖信息為:

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007eeac4; asc

再先分析下(1) TRANSACTION,TRANSACTION 32231892617。

等待的鎖信息為:

0: len 3; hex 53454b; asc SEK;;

1: len 8; hex 80000000007eeac4; asc

于是可以畫出的死鎖表,兩個資源相互依賴,造成死鎖:

TRANSACTION Hold Wait
32231892617 53454b\80000000007eea14 53454b\80000000007eeac4
32231892482 53454b\80000000007eeac4 53454b\80000000007eea14

讓我們再看一下explain結果:

mysql>desc UPDATE TestTable SET Column1=1, Column2 = sysdate(),Column3 = '025' Column4 = 0 AND Column5 = 477 AND Column6 = 'SEK' \G;

*************************** 1. row ***************************

id: 1

select_type: UPDATE

table: TestTable

partitions: NULL

type: index_merge

possible_keys: column5_index,idx_column5_column6_Column1,idxColumn6

key: column5_index,idxColumn6

key_len: 8,9

ref: NULL

rows: 7

filtered: 100.00

Extra: Using intersect(column5_index,idxColumn6); Using where

可以看到 EXTRA 列:

Using intersect(column5_index,idxColumn6)

從5.1開始,引入了 index merge 優化技術,對同一個表可以使用多個索引分別進行條件掃描。

相關文檔:http://dev.mysql.com/doc/refman/5.7/en/index-merge-optimization.html

The Index Merge method is used to retrieve rows with several range scans and to merge their results into one. The merge can produce unions, intersections, or unions-of-intersections of its underlying scans. This access method merges index scans from a single table; it does not merge scans across multiple tables.

【模擬與驗證】

根據以上初步分析,猜測應該就是intersect造成的,于是在測試環境模擬驗證,開啟2個session模擬死鎖:

時間序列 Session1 Session2
1 Begin;
2 UPDATE TestTable SET Column2 = sysdate() Column4 = 0 AND Column5 = 47 AND Column6 = 'SEK 
執行成功,影響7行
3 Begin;
4 UPDATE TestTable SET Column2 = sysdate(),Column4 = 0 AND Column5 = 485 AND Column6 = 'SEK';
被Blocking
5 UPDATE TestTable SET Column2 = sysdate(),Column4 = 0 AND Column5 = 485 AND Column6 = 'SEK';
執行成功
ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction

依據以上信息可以發現Session2雖然被Block了,但也獲取了一些Session1在時間序列5時所需資源的X鎖,可以再開啟一個查詢select count(Column5) from TestTable where Column5 = 485,設置SET TRANSACTION ISOLATION LEVEL SERIALIZABLE,去查詢Column5 = 485的行,觀察鎖等待的信息:
mysql> SELECT r.trx_id waiting_trx_id, r.trx_mysql_thread_id waiting_thread, r.trx_query waiting_query, b.trx_id

mysql> SELECT r.trx_id waiting_trx_id, r.trx_mysql_thread_id waiting_thread, r.trx_query waiting_query, b.trx_id blocking_trx_id, b.trx_mysql_thread_id blocking_thread, b.trx_query blocking_query FROM information_schema.innodb_lock_waits w INNER JOIN information_schema.innodb_trx b ON b.trx_id = w.blocking_trx_id INNER JOIN information_schema.innodb_trx r ON r.trx_id = w.requesting_trx_id \G;

*************************** 1. row ***************************

waiting_trx_id: 103006

waiting_thread: 36

waiting_query: UPDATE TestTable SET Column1 = 1, Column2 = sysdate(), Column3 = '026' Column4 = 0 AND Column5 = 485 AND Column6 = 'SEK'

blocking_trx_id: 103003

blocking_thread: 37

blocking_query: NULL

*************************** 2. row ***************************

waiting_trx_id: 421500433538672

waiting_thread: 39

waiting_query: select count(Column5) from TestTable where Column5 = 485

blocking_trx_id: 103006

blocking_thread: 36

blocking_query: UPDATE TestTable SET Column1 = 1, Column2 = sysdate(), Column3 = '026' Column4 = 0 AND Column5 = 485 AND Column6 = 'SEK'

2 rows in set, 1 warning (0.00 sec)

mysql> select * from information_schema.innodb_lock_waits \G;

*************************** 1. row ***************************

requesting_trx_id: 103006

requested_lock_id: 103006:417:1493:859

blocking_trx_id: 103003

blocking_lock_id: 103003:417:1493:859

*************************** 2. row ***************************

requesting_trx_id: 421500433538672

requested_lock_id: 421500433538672:417:749:2

blocking_trx_id: 103006

blocking_lock_id: 103006:417:749:2

2 rows in set, 1 warning (0.00 sec)
mysql> select * from INNODB_LOCKS \G;

*************************** 1. row ***************************

lock_id: 103006:417:1493:859

lock_trx_id: 103006

lock_mode: X

lock_type: RECORD

lock_table: test.TestTable

lock_index: idxColumn6

lock_space: 417

lock_page: 1493

lock_rec: 859

lock_data: 'SEK', 8262738

*************************** 2. row ***************************

lock_id: 103003:417:1493:859

lock_trx_id: 103003

lock_mode: X

lock_type: RECORD

lock_table:test.TestTable

lock_index: idxColumn6

lock_space: 417

lock_page: 1493

lock_rec: 859

lock_data: 'SEK', 8262738

*************************** 3. row ***************************

lock_id: 421500433538672:417:749:2

lock_trx_id: 421500433538672

lock_mode: S

lock_type: RECORD

lock_table: test.TestTable

lock_index: column5_index

lock_space: 417

lock_page: 749

lock_rec: 2

lock_data: 485, 8317620

*************************** 4. row ***************************

lock_id: 103006:417:749:2

lock_trx_id: 103006

lock_mode: X

lock_type: RECORD

lock_table: test.TestTable

lock_index: column5_index

lock_space: 417

lock_page: 749

lock_rec: 2

lock_data: 485, 8317620

4 rows in set, 1 warning (0.00 sec)

可以看到Session2,trx_id 103006阻塞了trx_id 421500433538672,而trx_id 421500433538672 requested_lock也正好是lock_data: 485, 8317620。由此可見Session2雖然別block了,但是還是獲取到了Index column5_index相關的鎖。被Block是因為intersect的原因,還需要idxColumn6的鎖,至此思路已經清晰,對整個分配鎖的信息簡化一下,如下表格(請求到的鎖用青色表示,需獲取但未獲取到的鎖用紅色表示):

時間點 Session1 Session2
1 477 SEK
2 485 SEK
3 485 SEK 死鎖發生

可以看到485 SEK這兩個資源形成了一個環狀,最終發生死鎖。

【解決方法】

  • 最佳的方法是添加column5和Column6的聯合索引。
  • 我們環境當時的情況發現Column6的篩選度非常低,就刪除了Column6的索引。
    10:55左右刪除索引后,報錯沒有再發生:

總結

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

您可能感興趣的文章:
  • mysql報錯:Deadlock found when trying to get lock; try restarting transaction的解決方法
  • 線上MYSQL同步報錯故障處理方法總結(必看篇)
  • MYSQL主從庫不同步故障一例解決方法
  • 一次MySQL慢查詢導致的故障
  • MySQL下高可用故障轉移方案MHA的超級部署教程
  • MySQL復制的概述、安裝、故障、技巧、工具(火丁分享)
  • 檢測MySQL的表的故障的方法

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

巨人網絡通訊聲明:本文標題《MySQL DeadLock故障排查全過程記錄》,本文關鍵詞  MySQL,DeadLock,故障,排查,全過程,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL DeadLock故障排查全過程記錄》相關的同類信息!
  • 本頁收集關于MySQL DeadLock故障排查全過程記錄的相關信息資訊供網民參考!
  • 推薦文章
    japanese在线视频| 中文字幕一区二| 亚洲激情自拍偷拍| 欧美福利一区二区| 一区二区三区高清国产| 国产成+人+综合+亚洲欧洲| 精品视频第一区| 青青草成人免费在线视频| 黄色片子免费看| 久久99久久99精品免费看小说| 成年人晚上看的视频| 视频一区视频二区在线观看| 久久这里只有精品首页| 欧美丝袜美女中出在线| 日韩av在线一区| 88xx成人精品| 蜜桃狠狠色伊人亚洲综合网站| 国产精品网站免费| 9.1成人看片| 三级视频在线观看| 日韩高清在线不卡| 国产精品欧美久久久久无广告 | 日批视频免费看| 久久国产精品波多野结衣av| 懂色av成人一区二区三区| 97久久人人超碰| 91福利在线观看| 日韩中文字幕第一页| 成人网址在线观看| 国产精品igao激情视频| 国产一级免费片| 少妇高潮av久久久久久| 久久99国产精品久久| 亚洲激情校园春色| 日韩福利在线播放| 国产精品久久久久久久久久久久久| 亚洲电影网站| 国产国语老龄妇女a片| 欧美一区二区激情视频| 久久97超碰色| 激情av一区二区| 一区二区中文字幕| 亚洲自拍高清视频网站| 国产av天堂无码一区二区三区| 亚洲自拍偷拍图| 99久久久国产精品无码网爆| 91浏览器在线视频| 在线不卡欧美精品一区二区三区| 欧美精品激情视频| 日韩亚洲不卡在线| 久久av一区二区三| 欧美男人天堂网| 成人黄色在线视频| 色老汉一区二区三区| 久久久成人精品| 裸模一区二区三区免费| gogogo高清免费观看在线视频| 久久久无码精品亚洲国产| 亚洲人妻一区二区三区| 亚洲精品免费一二三区| 亚洲免费精彩视频| 97视频中文字幕| aⅴ在线免费观看| 中文字幕在线2021| 日本欧美一区二区三区乱码| 亚洲永久精品国产| www.xxxx欧美| 欧美另类网站| 99免费观看视频| 最近中文字幕在线观看视频| 不卡的av电影在线观看| 欧美肥妇毛茸茸| 国产不卡av在线免费观看| 欧美一二三不卡| av在线播放中文字幕| 无码精品视频一区二区三区| 亚洲日本电影在线| 中文在线不卡视频| 免费看成人午夜电影| 色诱av手机版| 国产精品视频在线观看免费 | 欧美一区二区三区四| 另类专区欧美蜜桃臀第一页| 午夜电影久久久| 久久91精品国产91久久跳| 亚洲欧美日韩国产成人综合一二三区| 九色porny自拍视频| 国产三区在线播放| 中文字幕一区不卡| 中文字幕日韩在线视频| 欧美一区少妇| 国产精品无码午夜福利| 熟妇高潮一区二区高潮| 亚洲成人福利片| 九九热r在线视频精品| 综合网五月天| 日本 欧美 国产| 久久99精品久久久| 91.麻豆视频| 成人国产亚洲精品a区天堂华泰| 四季av一区二区| www.亚洲激情| 国产精品国产自产拍在线| 亚洲视频在线观看网站| 欧美日韩一区二区三| 波多野结衣 在线| 日韩激情在线观看| 欧美婷婷六月丁香综合色| 国产精品福利观看| 亚洲污视频在线观看| 中文字幕无码乱码人妻日韩精品| 国产精品久久久久桃色tv| 少妇高潮 亚洲精品| 亚洲一区二区三区午夜| 黄色片子在线观看| 成人听书哪个软件好| 亚洲级视频在线观看免费1级| 国产精品一区二区三区不卡 | 午夜小视频免费| 日本精品一级二级| 国产欧美日韩91| 日本r级电影在线观看| 成人高潮片免费视频| 婷婷久久综合九色国产成人| 欧美最猛性xxxxx免费| 欧美精品一区二区三区高清aⅴ| 国产亚洲人成网站在线观看| 翔田千里亚洲一二三区| 我要看黄色一级片| 高清国产一区二区| 日韩激情在线视频| 亚洲欧美日韩不卡一区二区三区| 欧美一区二区三区爽爽爽| 99久久精品国产一区二区三区| 精品爽片免费看久久| 视频一区二区精品| 高h视频免费观看| 26uuu国产电影一区二区| 伊人精品在线观看| 91xxx视频| 日本熟妇毛耸耸xxxxxx| 国产精品三级在线观看| 欧美成人免费播放| 日本成年人网址| 91中文字幕在线播放| 精品国产老师黑色丝袜高跟鞋| 国产精品av在线| 91丨porny丨九色| 葵司免费一区二区三区四区五区| 欧美精品乱人伦久久久久久| 国产亚洲福利社区| 一二三四国产精品| eeuss国产一区二区三区| 在线一区二区日韩| 日韩一级性生活片| 伊人网免费视频| 精品露脸国产偷人在视频| 国产欧美在线看| 欧美大片免费播放器| 国产乱人伦偷精品视频不卡| 亚洲精品资源在线| www国产免费| 亚洲精品无码久久久久| 香蕉成人啪国产精品视频综合网| 国产精品亚洲精品| 亚洲成人日韩在线| 成人午夜伦理影院| 色妞欧美日韩在线| 国产深夜男女无套内射| 这里只有精品9| 色综合久久中文综合久久97| 国产精品二区在线观看| 国产精品视频看看| 日本丰满少妇裸体自慰 | 亚洲资源中文字幕| 国产精品一区二区三| 国产伦精品一区二区三区妓女| 国产成人aaa| 北条麻妃一区二区三区中文字幕| 成人黄色片视频| 欧洲av在线播放| 精品少妇一区二区三区视频免付费| 亚洲国产精品日韩| 免费观看日批视频| 日韩欧美在线视频免费观看| 国产精品亚洲不卡a| 国产大学生自拍| 亚洲免费成人av| 国产主播在线一区| 美国美女黄色片| 国产情人综合久久777777| 98精品国产自产在线观看| 四虎国产精品免费| 国产精品亚洲一区二区三区在线| 日韩中文字幕免费看| 色综合天天色综合| 免费不卡在线观看| 一区国产精品视频| 91最新在线观看| 日本va欧美va精品发布| 亚洲欧洲日本专区| 国产v亚洲v天堂无码久久久 | 欧美一区二区三区成人精品| proumb性欧美在线观看| 久久免费国产视频| 欧美xxxxx少妇| 99久久免费精品高清特色大片| 久久免费高清视频| 亚洲啪av永久无码精品放毛片| 不卡的看片网站| 亚洲18私人小影院| 美女又爽又黄免费| 久久蜜臀中文字幕| 国产精品99久久99久久久二8| 久久久久麻豆v国产精华液好用吗| 99久久精品久久久久久清纯| 欧美夜福利tv在线| 亚洲最大成人网站| 国产欧美精品一区二区色综合| 国产福利成人在线| 欧美亚洲色综久久精品国产| 中文字幕一区二区在线播放| 富二代精品短视频| 欧美一区视频在线| 久久精品无码一区| 中文字幕在线播放不卡一区| 91香蕉电影院| 精品少妇theporn| 色综合久久久久综合| 日本一区二区在线| 夜夜狠狠擅视频| 精品国产露脸精彩对白| av免费播放网址| 久久精品久久久精品美女| 美女精品视频一区| 少妇一级淫片免费放播放| 日本一区二区三级电影在线观看 | 亚洲中文字幕无码一区| 国产婷婷色一区二区三区在线| 国产精品免费观看在线| 国语对白在线播放| 精品动漫一区二区三区| 日韩激情视频| 国产手机视频在线| 亚洲免费视频观看| 九九热视频免费| 久久亚洲精华国产精华液| 国产欧美一区二区三区四区| 免费毛片在线播放免费 | 一本色道综合亚洲| 天天做天天爱天天高潮| 色综合视频在线| 日韩中文字在线| av免费观看不卡| 国产精品另类一区| 国产在线播放一区二区| 亚洲自拍一区在线观看| 日韩精品一区二区三区视频播放| 国产综合免费视频| 精品亚洲国内自在自线福利| 97人人做人人爱| www.99re6| 日本精品一级二级| 精品国产一区二区三区无码| 麻豆国产一区二区| 9.1国产丝袜在线观看| 91视频最新网址| 在线亚洲高清视频| www.射射射| 国产精品一品二品| 国产精品久久久久久av福利软件| 日韩在线观看电影完整版高清免费| 色哟哟一一国产精品| 日韩欧美在线视频免费观看| 青青在线视频免费观看| 五月婷婷深深爱| 久久久久久国产| 99自拍视频在线| 欧美三级日韩在线| 国产免费一区二区三区视频| 成人小视频在线| 91免费精品视频| 中日韩av在线| 亚洲人成人99网站| xxxx黄色片| 午夜不卡av在线| 日本福利视频在线观看| 韩国一区二区视频| 国产精品视频区| 香蕉污视频在线观看| 亚洲乱码av中文一区二区| 欧美性生交xxxxx| 一区二区三区高清在线| 只有这里有精品| 韩国欧美国产一区| 国产欧美日韩专区发布| 欧美a视频在线观看| 日韩精品在线第一页| 五月天丁香社区| 亚洲国产婷婷综合在线精品| 免费在线精品视频| 国产精品主播直播| 91网站在线看| 国产精品一区二区黑人巨大| 久久中文字幕在线视频| 5566中文字幕| 日韩午夜电影在线观看| 国产黑丝在线视频| 亚洲人成网站在线| 影音先锋男人的网站| 国产精品一区二区果冻传媒| 亚洲最大的网站| 99久久亚洲精品日本无码| 久久成人综合视频| 国产一区二区精彩视频| 日韩一级二级三级| 日本中文字幕精品| 亚洲电影一区二区| 日韩国产一级片| 91蝌蚪国产九色| 欧美日韩亚洲免费| 日本va欧美va欧美va精品| 国产一区二中文字幕在线看| 国产有码在线观看| 欧美高清电影在线看| 国产无码精品视频| 亚洲男人天堂网站| 中文字幕欧美激情极品| 91精品欧美一区二区三区综合在| 中文字幕55页| 精品女厕一区二区三区| 国产l精品国产亚洲区久久| 草久久免费视频| 色999日韩国产欧美一区二区| 欧美性大战久久久久xxx| 亚洲国产高清不卡| 亚洲成年人专区| 不卡欧美aaaaa| 日本视频一区在线观看| 九色porny丨国产精品| 91沈先生在线观看| 好吊视频一区二区三区| 国产97在线|日韩| 91激情在线观看| 国内精品伊人久久| 波多野结衣电车| 欧美疯狂做受xxxx高潮| 日本美女高潮视频| 天天操天天操天天操天天| 成人av在线影院| 欧美性生活久久| 青青在线免费观看| 国产欧美一区二区精品秋霞影院| 国产免费一区二区三区四在线播放| 成人国产精品免费网站| 日韩高清国产一区在线观看| 国产成人综合网| 欧美亚洲一级二级| 国产成人免费视频 | www.五月婷| 欧美资源在线观看| 国产精品九九九九| 情事1991在线| jlzzjlzz亚洲女人18| 国产精品福利小视频| 亚洲国产精品二区| 国产精品青青在线观看爽香蕉| 超碰免费在线97| 国产欧美va欧美va香蕉在| 亚洲精品久久久蜜桃动漫 | 久久一本综合频道| 亚洲最大福利视频| 男女男精品视频网| 精品日产一区2区三区黄免费 | 亚洲黄色激情视频| 色妞欧美日韩在线| 五月婷婷开心网| 欧美日韩国产第一页| 欧美激情一区二区三区免费观看 | 亚洲小说欧美激情另类| 亚洲无吗一区二区三区| 欧美日韩国产限制| 特种兵之深入敌后| 欧美挠脚心视频网站| 美女100%无挡| 日韩成人av网| 久久久久无码国产精品| 美女av一区二区三区| 中文字幕在线观看第二页| 亲子乱一区二区三区电影| 亚洲国产日韩在线观看| 91九色露脸| 国产综合成人久久大片91| 日韩精品一区二区三区四区五区| av中文字幕不卡| 日本男女交配视频| wwwww黄色| 亚洲精品美女在线| 久久久久久久久久一区二区三区| 久久精品国产亚洲一区二区 | 色吧影院999| 精品人妻一区二区三区潮喷在线| 亚洲18私人小影院| 免费国产精品视频| 国产精品国产三级国产专区53| 成人一级黄色片| www.avtt| 天天综合日日夜夜精品| www.美色吧.com| 亚洲精品成人久久|