晕了,mysql 居然kill不掉,请问有人知道吗?

microsealkey 2008-01-30 10:32:18
以前从来没遇到过这种问题,虽然有相关现象(参见http://topic.csdn.net/u/20080123/15/47f2a905-36dd-45bf-a913-98b3018fd9d2.html)

今天遇到的问题更奇怪了,用show processlist发现有很多查询被locked,然后有10来个查询在Sending data
然后我就用kill命令想把这些sending data的查询干掉看看。结果奇迹就出现了,所有查询都没被kill掉,只是command栏变成了"killed"。几分钟过去了也没任何动静。现在除了被locked的查询,就是被killed的,不知道该咋办了。
另外,locked的查询中,有一条update语句,该查询如果被kill,似乎就能恢复正常。

这些查询很多都是简单根据id进行,速度应该相当快。而且也检查了磁盘空间有余,也没看到mysql日志有任何错误信息。
...全文
2961 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
microsealkey 2008-02-21
  • 打赏
  • 举报
回复
哎,找不到原因,结贴吧
懒得去死 2008-02-03
  • 打赏
  • 举报
回复
斑竹说的对
上次一个扫描好几百万行的SQL语句就浪费了800M的内存。优化了以后就只有不到2M内存了。
mathematician 2008-02-03
  • 打赏
  • 举报
回复
因为有一条执行语句造成了阻塞,其他的查询均在排队ing...把造成阻塞的sql kill掉,就云淡风轻了。需要注意,造成阻塞的sql要特别检查执行计划,优化之。我的经验,这种sql一般是巨耗资源的。
懒得去死 2008-01-30
  • 打赏
  • 举报
回复
用两步。
kill query PID;
kill PID;
microsealkey 2008-01-30
  • 打赏
  • 举报
回复
应该和loading无关吧?因为它啥都不干了。
另外,loading怎么看?

(后来这些killed查询也慢慢逐个消失了)
microphonecarl 2008-01-30
  • 打赏
  • 举报
回复
可能是mysql的loading 重
microsealkey 2008-01-30
  • 打赏
  • 举报
回复
实在找不出原因,我kill那个locked的update查询,结果马上所有locked的查询被正常执行,但那些"killed"的查询居然纹丝不动。崩溃了。

57,063

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧