我们最近升级了运行在 mysql 服务器版本 5.5.8 上的 mysql 数据库。升级后,有时我们会看到简单的升级过程需要 10 多秒。当我查看进程列表时,它显示所有进程都处于“查询结束”状态。有没有人对此有任何想法。
UPDATE Accounts SET IPadd = 'xx.xx.xx.xx', updatedtime = NULL WHERE Id=xx;
我们最近升级了运行在 mysql 服务器版本 5.5.8 上的 mysql 数据库。升级后,有时我们会看到简单的升级过程需要 10 多秒。当我查看进程列表时,它显示所有进程都处于“查询结束”状态。有没有人对此有任何想法。
UPDATE Accounts SET IPadd = 'xx.xx.xx.xx', updatedtime = NULL WHERE Id=xx;
我在这里检查了一些解决方案,然后找到了这个链接。
添加此行(如果存在,请编辑它):
innodb_flush_log_at_trx_commit = 0
在 /etc/my.cnf
佩德罗·韦内克评论:
天真地设置 innodb_flush_log_at_trx_commit 可能很危险
如果您正在对它进行事务查询,这是您的选择。
建议:
1)检查日志文件的大小
链接:MySQL 中有很多“查询结束”状态,所有连接都在几分钟内使用
2)确保“id”有一个索引
3) 查看各种 MySql 调优和配置选项。例如:innodb_flush_log_at_trx_commit = 0
警告:在禁用日志刷新之前请仔细考虑。在此处查看更多详细信息:
链接:https ://dba.stackexchange.com/questions/12611/is-it-safe-to-use-innodb-flush-log-at-trx-commit-2