91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么解決Mysql Sleep線程引發的鎖等待故障

發布時間:2021-08-26 14:40:51 來源:億速云 閱讀:539 作者:chen 欄目:MySQL數據庫

本篇內容主要講解“怎么解決Mysql Sleep線程引發的鎖等待故障”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么解決Mysql Sleep線程引發的鎖等待故障”吧!

背景:

負責的生產庫出現告警too many connections.

解決過程:

1. 第一反應就是出現了大量的連接或者是DDL把實例打滿了,隨即登上實例嘗試登陸,卻發現已經連不上了。然后動態調大連接數后。使用如下SQL看到大量的UPDATE線程未執行完。

select id,host,user,db,command,state,time,left(info,200) from information_schema.processlist where command <>'Sleep' order by time desc limit 100;

    怎么解決Mysql Sleep線程引發的鎖等待故障

2. 此時看到這個場景,大家大概率都會以為是表tbl_prod的ID沒有索引所以是全表查找更新,然而看到執行計劃卻發現并不是,反而是主鍵更新。

explain UPDATE tbl_prod SET status=1 WHERE id = 1198445;

怎么解決Mysql Sleep線程引發的鎖等待故障

3. 隨后查看innodb引擎當前的狀態,發現很有意思的事了,這些update線程都在等待鎖,以其中一個線程為例。

show engine innodb status\G

怎么解決Mysql Sleep線程引發的鎖等待故障

4. 此時基本上可以斷定是有長事務未提交導致的大量主鍵更新等待了。我們采用如下SQL可以找到這個長連接。

select p.host,p.time,t.trx_mysql_thread_id,t.trx_started,left(p.info,100) from information_schema.innodb_trx t join information_schema.processlist p  on t.trx_mysql_thread_id =p.id order by time desc,t.trx_started desc limit 20;

怎么解決Mysql Sleep線程引發的鎖等待故障

5. 可以看到上面的第一條執行時間最長的為NULL的線程占用鎖時間最長,其后則是大量的update等待線程了。那么我們將這個最長的null線程給KILL掉,問題即得到解決。

kill 2323514;

到此,相信大家對“怎么解決Mysql Sleep線程引發的鎖等待故障”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

万宁市| 綦江县| 广昌县| 桐城市| 石棉县| 台东市| 凤山市| 巍山| 南充市| 乐业县| 邵东县| 连江县| 论坛| 莱西市| 安康市| 呼和浩特市| 延川县| 舞钢市| 昌平区| 天长市| 砚山县| 抚宁县| 巴中市| 萨嘎县| 津南区| 大港区| 湟中县| 北宁市| 长兴县| 桐乡市| 同德县| 大英县| 城口县| 梨树县| 抚宁县| 双城市| 佛教| 民勤县| 喀什市| 大庆市| 包头市|