欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySql中怎樣查詢表是否被鎖

 更新時間:2023年07月27日 10:42:01   作者:奮斗·小青年  
這篇文章主要介紹了MySql中怎樣查詢表是否被鎖問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

MySql查詢表是否被鎖

查看表被鎖狀態(tài)

# 查詢哪些表鎖了
show OPEN TABLES where In_use > 0;

查看造成死鎖的sql語句

# 查詢innodb引擎的運(yùn)行時信息
show engine innodb status;

查詢進(jìn)程

# 查詢所有進(jìn)程
show processlist;

解鎖(刪除進(jìn)程)

# 刪除進(jìn)程
kill id;

查看正在執(zhí)行的事務(wù)

# 查看正在執(zhí)行的事務(wù)
select * from information_schema.INNODB_TRX;

查看正在鎖的事物

# 查看正在鎖的事物
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS

查看等待鎖的事物

# 查看等待鎖的事務(wù)
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

MySql出現(xiàn)數(shù)據(jù)庫表被鎖解決方案

出現(xiàn)的現(xiàn)象

頁面出現(xiàn)502錯誤,數(shù)據(jù)庫CPU持續(xù)飆升,大量事務(wù)堆積未提交成功(事務(wù)一直處于阻塞階段)

查看阻塞事務(wù)列表,發(fā)現(xiàn)其中有鎖表現(xiàn)象。

排查與解決思路

1)查看數(shù)據(jù)庫中是否有表被鎖

show open tables where in_use > 0;

如果上述返回有結(jié)果,說明有表正在被使用,返回字段如下

| Database | Table | In_use | Name_locked |

2)查看進(jìn)程(只會顯示當(dāng)前用戶的進(jìn)程,除非是root用戶)

show processlist;

3)查看當(dāng)前運(yùn)行所有事務(wù)

SELECT * FROM information_schema.INNODB_TRX;

4)查看當(dāng)前出現(xiàn)的所有鎖

SELECT * FROM information_schema.INNODB_LOCKs;

5)查詢鎖等待的對應(yīng)關(guān)系

SELECT * FROM information_schema.INNODB_LOCK_waits;

查看事務(wù)表 INNODB_TRX中 是否有正在鎖定的事務(wù)線程

確認(rèn) ID 是否在 show processlist 的 sleep 線程中:如果在,說明這個sleep的線程事務(wù)一直沒有commit 或者 rollback,而是卡住了,需要手動kill掉。

搜索的結(jié)果中,如果在事務(wù)表發(fā)現(xiàn)了很多任務(wù),最好都 kill 掉。

6)清理事務(wù)指定的線程 ID

kill 1234;

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mysql服務(wù)器的安裝配置與啟動關(guān)閉方法詳解

    Mysql服務(wù)器的安裝配置與啟動關(guān)閉方法詳解

    MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在 WEB 應(yīng)用方面 MySQL 是最好的 RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫管理系統(tǒng))應(yīng)用軟件之一
    2021-10-10
  • mysql的日期和時間函數(shù)

    mysql的日期和時間函數(shù)

    mysql的日期和時間函數(shù) 這里是一個使用日期函數(shù)的例子。
    2010-11-11
  • Mysql離線安裝8.0.26的圖文教程

    Mysql離線安裝8.0.26的圖文教程

    這篇文章主要介紹了Mysql離線安裝8.0.26的圖文教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • CentOS 6.4下編譯安裝MySQL5.6.14教程

    CentOS 6.4下編譯安裝MySQL5.6.14教程

    這篇文章主要為大家詳細(xì)介紹了CentOS 6.4下編譯安裝MySQL 5.6.14教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 詳解mysql5.7密碼忘記解決方法

    詳解mysql5.7密碼忘記解決方法

    這篇文章主要介紹了mysql5.7密碼忘記解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • mysql?事務(wù)解析

    mysql?事務(wù)解析

    這篇文章主要給大家分享的是mysql事務(wù)解析,事務(wù)(transaction)是業(yè)務(wù)邏輯的一個基本的單元組成,下面文章圍繞mysql事務(wù)的相關(guān)資料展開詳細(xì)內(nèi)容,需要的朋友可以參考一下希望對大家有所幫助
    2021-11-11
  • mysql啟動提示mysql.host 不存在,啟動失敗的解決方法

    mysql啟動提示mysql.host 不存在,啟動失敗的解決方法

    我將s9當(dāng)眾原來的mysql4.0刪除后,重新裝了個mysql5.0,啟動過程中報(bào)一下錯誤,啟動失敗,查了一下群里面的老帖子也沒有個具體的明確說明
    2011-10-10
  • 使用SQL將多行記錄合并成一行實(shí)例代碼

    使用SQL將多行記錄合并成一行實(shí)例代碼

    今天同事問了一個需求,就是將多行數(shù)據(jù)合并成一行進(jìn)行顯示,查詢了一些資料,這篇文章主要給大家介紹了關(guān)于使用SQL將多行記錄合并成一行的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • mysql導(dǎo)入csv的4種報(bào)錯的解決方法

    mysql導(dǎo)入csv的4種報(bào)錯的解決方法

    這篇文章主要介紹了mysql導(dǎo)入csv的4種報(bào)錯的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • MySQL 數(shù)據(jù)庫設(shè)計(jì)復(fù)習(xí)筆記及項(xiàng)目實(shí)戰(zhàn)

    MySQL 數(shù)據(jù)庫設(shè)計(jì)復(fù)習(xí)筆記及項(xiàng)目實(shí)戰(zhàn)

    參考的數(shù)據(jù)庫文檔主要有:目前國內(nèi)的常見的PHP系統(tǒng)的數(shù)據(jù)庫
    2010-03-03

最新評論