Mysql、hibernate slow_query_log日志设置时间戳

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

我正在对在 DAO 层中使用 hibernate 框架的 Java 应用程序运行负载测试。我在慢查询日志中发现了好几处 following。

# 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,用于使用 readline 5.1 的 redhat-linux-gnu (x86_64)。 EhCache 已被用作某些实体的 hibernate 缓存提供程序。我在我的应用程序中使用 3GB inno_db_buffer_pool_size 用于 199.6MB 数据库和 32-64 个池化 mysql 连接。此外,服务器有 16GB 的总 RAM,应用程序 JVM 配置为使用 4GB 堆。

我找到了 this文章写于 2007 年。我不确定 hibernate 是否涉及调用 NOW() 或任何其他导致我的案例采取行动的问题。任何类似的事情都没有在代码中明确地完成。知道此日志行的根本原因吗?

最佳答案

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

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

关于Mysql、hibernate slow_query_log日志设置时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44903718/

相关文章:

JPA 2级缓存

java - 通过外部属性禁用 spring 方法缓存

mysql - 需要帮助了解 MySQL 死锁的位置

php - 从数据库获取经纬度点的距离

hibernate - 如何克服Hibernate中union-subclass生成SQL导致的性能问题

java - Hibernate,获取uuid的映射异常

java - 为什么 Hibernate Session 会有这样的行为

java - Hibernate 使用一级或二级缓存加载所有实体

php - 使 MySQL 数据库对非开发人员可读

PHP foreach 循环数组