真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql怎么查看鎖時(shí)間 mysql鎖等待時(shí)間

如何查看mysql的鎖信息

方法1:利用 metadata_locks 視圖

創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)與策劃設(shè)計(jì),岱岳網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:岱岳等地區(qū)。岱岳做網(wǎng)站價(jià)格咨詢:028-86922220

此方法僅適用于 MySQL 5.7 以上版本,該版本 performance_schema 新增了 metadata_locks,如果上鎖前啟用了元數(shù)據(jù)鎖的探針(默認(rèn)是未啟用的),可以比較容易的定位全局鎖會(huì)話。

方法2:利用 events_statements_history 視圖此方法適用于 MySQL 5.6 以上版本,啟用 performance_schema.eventsstatements_history(5.6 默認(rèn)未啟用,5.7 默認(rèn)啟用),該表會(huì) SQL 歷史記錄執(zhí)行,如果請(qǐng)求太多,會(huì)自動(dòng)清理早期的信息,有可能將上鎖會(huì)話的信息清理掉。

方法3:利用 gdb 工具如果上述兩種都用不了或者沒(méi)來(lái)得及啟用,可以嘗試第三種方法。利用 gdb 找到所有線程信息,查看每個(gè)線程中持有全局鎖對(duì)象,輸出對(duì)應(yīng)的會(huì)話 ID,為了便于快速定位,我寫(xiě)成了腳本形式。也可以使用 gdb 交互模式,但 attach mysql 進(jìn)程后 mysql 會(huì)完全 hang 住,讀請(qǐng)求也會(huì)受到影響,不建議使用交互模式。

方法4:show processlist

如果備份程序使用的特定用戶執(zhí)行備份,如果是 root 用戶備份,那 time 值越大的是持鎖會(huì)話的概率越大,如果業(yè)務(wù)也用 root 訪問(wèn),重點(diǎn)是 state 和 info 為空的,這里有個(gè)小技巧可以快速篩選,篩選后嘗試 kill 對(duì)應(yīng) ID,再觀察是否還有 wait global read lock 狀態(tài)的會(huì)話。

方法5:重啟試試!

mysql查看是否鎖表并解除鎖

一:檢查是否鎖表, 查詢進(jìn)程并殺死進(jìn)程

1) 查詢是否鎖表

show open tables where in_use 0;

2) 查詢進(jìn)程(如果您有SUPER權(quán)限,您可以看到所有線程。否則,您只能看到您自己的線程)

show processlist;

二:查看在鎖事務(wù),殺死事務(wù)對(duì)應(yīng)的線程ID

1) 查看正在鎖的事務(wù)

select * from information_schema.INNODB_LOCKS;

2) 殺死進(jìn)程id(就是[select * from information_schema.INNODB_LOCKS; ]命令的trx_mysql_thread_id列)

kill 線程ID

3) 查看等待鎖的事務(wù)

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

其它:

1) 查看服務(wù)器狀態(tài)

show status like '%lock%';

2) 查看超時(shí)時(shí)間:

show variables like '%timeout%';

查詢mysql 哪些表正在被鎖狀態(tài)

可直接在mysql命令行執(zhí)行:show engine innodb status\G;

查看造成死鎖的sql語(yǔ)句,分析索引情況,然后優(yōu)化sql然后show processlist;

show status like ‘%lock%’

show OPEN TABLES where In_use 0; 這個(gè)語(yǔ)句記錄當(dāng)前鎖表狀態(tài)

另外可以打開(kāi)慢查詢?nèi)罩?,linux下打開(kāi)需在my.cnf的[mysqld]里面加上以下內(nèi)容:

slow_query_log=TRUE(有些mysql版本是ON)

slow_query_log_file=/usr/local/mysql/slow_query_log.txt

long_query_time=3

擴(kuò)展資料:

MySQL鎖定狀態(tài)查看命令

Checking table:正在檢查數(shù)據(jù)表(這是自動(dòng)的)。?

Closing tables:正在將表中修改的數(shù)據(jù)刷新到磁盤(pán)中,同時(shí)正在關(guān)閉已經(jīng)用完的表。這是一個(gè)很快的操作,如果不是這樣的話,就應(yīng)該確認(rèn)磁盤(pán)空間是否已經(jīng)滿了或者磁盤(pán)是否正處于重負(fù)中。

Connect Out:復(fù)制從服務(wù)器正在連接主服務(wù)器。?

Copying to tmp table on disk:由于臨時(shí)結(jié)果集大于tmp_table_size,正在將臨時(shí)表從內(nèi)存存儲(chǔ)轉(zhuǎn)為磁盤(pán)存儲(chǔ)以此節(jié)省內(nèi)存。

Creating tmp table:正在創(chuàng)建臨時(shí)表以存放部分查詢結(jié)果。

deleting from main table:服務(wù)器正在執(zhí)行多表刪除中的第一部分,剛刪除第一個(gè)表。


網(wǎng)站題目:mysql怎么查看鎖時(shí)間 mysql鎖等待時(shí)間
當(dāng)前鏈接:http://weahome.cn/article/dooieco.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部