查看mysql是否鎖表了


1.查看表是否被鎖:

(1)直接在mysql命令行執行:show engine innodb status\G。

(2)查看造成死鎖的sql語句,分析索引情況,然后優化sql。

(3)然后show processlist,查看造成死鎖占用時間長的sql語句。

(4)show status like ‘%lock%。

2.查看表被鎖狀態和結束死鎖步驟:

(1)查看表被鎖狀態:show OPEN TABLES where In_use > 0; 這個語句記錄當前鎖表狀態 。

(2)查詢進程:show processlist查詢表被鎖進程;查詢到相應進程killid。

(3)分析鎖表的SQL:分析相應SQL,給表加索引,常用字段加索引,表關聯字段加索引。

(4)查看正在鎖的事物:SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS。

(5)查看等待鎖的事物:SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM