【发布时间】:2009-03-25 16:20:08
【问题描述】:
我有以下场景:
我有一个包含大约 400 万行的特定 MyISAM 表的数据库。我使用存储过程(MySQL 5.1 版)和一个特别是根据各种条件搜索这些行。这个表上有几个索引,通过这个存储过程的查询通常非常快(
大多数查询在一秒钟内运行(我使用 LIMIT 随时只获取 15 行)。但是,有一些罕见的查询需要更长时间才能运行(比如 2-3 秒)。我已尽我所能优化搜索表。
我开发了一个 Web 应用程序,我可以在一秒钟内在我的开发机器上运行并查看快速查询的结果。
但是,如果我打开两个浏览器实例并同时进行搜索(针对开发机器),一个具有运行时间较长的查询,另一个具有更快的查询,结果会同时返回,即看起来好像快速查询在返回结果之前等待较慢的查询完成。即两个查询都需要 2-3 秒...
这是有原因的吗?因为我认为 MyISAM 处理 SELECTS 彼此无关,而目前这不是我正在经历的行为......
提前致谢! 蒂姆
【问题讨论】:
标签: mysql select myisam concurrency