我有一个由ORM构建的非常慢的查询,我很好奇我怎么能找到正在执行的确切查询。
我无法从mysql-slow.log
监控它,因为它永远不会完成执行(因为我没有等待它的永恒,等待一个多小时)。
我也无法在执行后从ORM获取查询。我想到的唯一方法就是从流程列表中获取。
show processlist \G
但我的问题是,即使在from
关键字之前,大部分查询都已被删除。
以前曾问过这个问题,但没有回答https://stackoverflow.com/questions/3741356/find-queries-from-process-id-mysql-5-1-x
有什么建议吗?
答案 0 :(得分:3)
如果您的查询格式化为多行,则某些MySQL客户端将仅显示第一行。要在MySQL控制台中查看完整输出运行SHOW FULL PROCESSLIST;
查询。