2
我有很多条目的慢查询日志中,仅仅有“提交”在他们身上,他们需要大约3秒,这是缓慢的,但相比不可怕一些其他的疑问。“提交”在MySQL慢查询日志与Rails应用程序2.3.5
的条目是这样的:
COMMIT;
# Time: 120111 14:11:05
# [email protected]: root[root] @ localhost []
# Query_time: 3.140228 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
SET timestamp=1326291065;
COMMIT;
# Time: 120111 14:14:03
# [email protected]: root[root] @ localhost []
# Query_time: 2.036250 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
SET timestamp=1326291243;
COMMIT;
我的问题是,为什么会被铁轨发出“提交”?
我的理解是,应使用自动提交,除非我做的手工交易。
有趣,看着我的Rails日志我看到很多BEGIN的东西,然后再COMMIT,即使没有做嵌套的扑救,也许轨犯规利用自动提交过....我读到某处的文档,但也许该文档错了.. – Joelio 2012-01-11 21:32:33
我检查了一个日志,你是对的,Rails在每一个改变数据库的查询上执行一个事务。我完成了答案。 – basgys 2012-01-11 21:55:30