mysql,hibernate slow_query_log日志设置时间戳

时间:2017-07-04 10:40:02

标签: mysql hibernate ehcache mysql-slow-query-log

我在java应用程序上运行负载测试,该应用程序在DAO层使用hibernate框架。我在慢查询日志中发现了几次跟随。

# Time: 170704 15:06:47
# User@Host: user[user] @ localhost [127.0.0.1]  Id:   163
# Query_time: 0.428159  Lock_time: 0.000000 Rows_sent: 0  Rows_examined: 0
SET timestamp=1499161007;
commit;

我在Cent OS上使用mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1。 EhCache已被用作某些实体的hibernate缓存提供程序。我在我的应用程序中使用3GB inno_db_buffer_pool_size用于199.6MB数据库和32-64个池化mysql连接。此外,服务器具有16GB的总RAM,应用程序JVM配置为使用4GB堆。

我发现2007年写的this文章。我不确定hibernate是否涉及调用NOW()或导致我的案例中的任何其他问题。任何类似的东西都没有在代码中明确地完成。有关此日志行的根本原因的任何想法吗?

1 个答案:

答案 0 :(得分:1)

根据this stackoverflow question commit;语句是在慢查询日志中成为此记录的原因。在获取统计详细信息之前已执行SET timestamp=1499161007;

我还需要查找在需要很长时间才能提交的事务中执行了哪些查询。深入挖掘我发现mysql查询日志和此问题中提供的suggestions可以使用。