【发布时间】:2013-03-01 00:15:47
【问题描述】:
我们最近升级了运行在 mysql 服务器版本 5.5.8 上的 mysql 数据库。升级后,有时我们会看到简单的升级过程需要 10 多秒。当我查看进程列表时,它显示它们都处于“查询结束”状态。有没有人对此有任何想法。
UPDATE Accounts SET IPadd = 'xx.xx.xx.xx', updatedtime = NULL WHERE Id=xx;
【问题讨论】:
标签: mysql
我们最近升级了运行在 mysql 服务器版本 5.5.8 上的 mysql 数据库。升级后,有时我们会看到简单的升级过程需要 10 多秒。当我查看进程列表时,它显示它们都处于“查询结束”状态。有没有人对此有任何想法。
UPDATE Accounts SET IPadd = 'xx.xx.xx.xx', updatedtime = NULL WHERE Id=xx;
【问题讨论】:
标签: mysql
我在这里检查了一些解决方案,我想到了这个link。
添加这一行(如果存在则编辑它):
innodb_flush_log_at_trx_commit = 0
在 /etc/my.cnf 中
关于 Pedro Werneck 的评论:
天真地设置 innodb_flush_log_at_trx_commit 可能很危险
如果您对它进行事务查询,这是您的选择。
【讨论】:
建议:
1) 检查日志文件的大小
链接:Lots of "Query End" states in MySQL, all connections used in a matter of minutes
2) 确保“id”有索引
3) 查看各种 MySql 调优和配置选项。例如:innodb_flush_log_at_trx_commit = 0
链接:"query end" step very long at random times
警告:在禁用日志刷新之前请仔细考虑。更多详情请看这里:
链接:https://dba.stackexchange.com/questions/12611/is-it-safe-to-use-innodb-flush-log-at-trx-commit-2
【讨论】: