MySQL-mysql 停留在 query end状态,这个状态是什么意思

MySQL-mysql 停留在 query end状态,这个状态是什么意思,第1张

query end说明有未完成的事务。

需要查看更多的信息才能知道是事务锁还是其他的原因。

以下是一个意外的例子,供你参考:

负责的系统突然宕机,查看tomcat的服务器状态,连接已被使用完,再查看数据库mysql的状态,使用命令show processlist,发现大量的更新或插入数据的连接卡在query end状态,检查服务器的负载,发现内存没有问题,CPU负载也很低,折腾了许久也没搞定,后来查看硬盘的时候,发现硬盘已被写满了,后来清除掉一部分无用的文件,释放了硬盘空间后,系统恢复正常。

end 是语言结构 和 begin成对出现 .

比如

begin

语句1

语句2

...

end

类似的还有 if endif 等

ends 是mysql 5.10版本新增的事件调度功能使用的关键字,作用是定义调度器的结束时间

比如

每天定时更新,2天后停止执行:

CREATE EVENT 事件名

ON SCHEDULE EVERY 1 DAY

ENDS CURRENT_TIMESTAMP + INTERVAL 2 DAY

DO update语句

mysql_query("begin")

mysql_query("commit")

mysql_query("rollback")

mysql_query("end")

直接这样写就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8430449.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-16
下一篇2023-04-16

发表评论

登录后才能评论

评论列表(0条)

    保存