对于MySQL 5.1,有没有办法获取由MySQL客户端连接保存的命名MySQL“锁”列表?
我知道如果我知道锁的名称,我可以检查一个特定的命名锁。但是我想知道如何(如果可能的话)列出持有(或等待)命名锁的客户端连接,特别是每个客户端持有的锁的名称。
我在这里询问获得,发布,检查等的命名锁。通过MySQL GET_LOCK,RELEASE_LOCK,IS_FREE_LOCK和IS_USED_LOCK函数。
http://dev.mysql.com/doc/refman/5.1/en/miscellaneous-functions.html#function_get-lock
(注意:我不询问LOCK TABLE语句获取的表锁)
答案 0 :(得分:4)
我认为不可能得到一个持有锁的客户列表,但是你应该能够获得一个正在等待锁的客户列表,使用这样的查询:
select *
from information_schema.PROCESSLIST
where state = 'User lock'