【发布时间】:2011-11-15 23:39:11
【问题描述】:
我有一个应用程序运行良好一段时间,但最近开始在慢查询日志中弹出一些项目。 所有查询都是可以使用重构的复杂且丑陋的多连接选择语句。我相信它们都有斑点,这意味着它们被写入磁盘。让我好奇的部分是为什么他们中的一些人有与之相关的锁定时间。所有查询都没有应用程序设置的任何特定锁定协议。据我所知,默认情况下,除非明确指定,否则您可以读取锁。
所以我的问题是:什么情况会导致 select 语句必须等待锁定(从而在慢查询日志中报告)?假设 INNODB 和 MISAM 环境。
可以将磁盘交互列为某种锁定时间吗?如果是,是否有相关文档说明了这一点?
提前致谢。
【问题讨论】:
标签: mysql locking mysql-slow-query-log