我有一项任务是监视服务器上的查询并终止从PHP代码锁定其他查询的查询。 我想知道这是否可行,以及如何做到这一点。
我搜索了有关此主题的现有问题,但没有任何匹配的情况。
我正在使用show processlist
来获取查询列表。
我检查了mysql网站,发现“状态”可以是,
已锁定 - 查询被另一个查询锁定。
但是如何获取已锁定此查询的查询的进程ID,所以稍后我可以通过此id终止此查询。
答案 0 :(得分:0)
SHOW PROCESSLIST;
和SELECT * FROM information_schema.PROCESSLIST;
返回会话的id
号码。您可以在KILL函数中使用此值,例如 -
KILL CONNECTION 337;
此外,您可以尝试KILL QUERY语句。从文档: KILL QUERY终止连接当前正在执行的语句,但保持连接本身完整。自己完整。