我的一个查询遇到了问题,它有时非常慢。
SELECT * FROM table WHERE primary_key IN (1,2,...)非常慢,有时甚至是5秒,大约100个条目。显然,我们在主键上有索引。有没有办法优化这个查询。这个表格略大,大约有1亿个条目。
发布于 2012-07-25 19:59:53
你能不能解释一下,也许有什么不对劲的地方。
此外,如果这是一个MyISAM数据库表,并且您有高并发插入,则该表将在插入期间被锁定,因此您的选择在此期间可能会阻塞。
发布于 2012-07-25 20:32:08
对于一个100M的记录表,您不能真正在查询优化方面做太多事情,因为它足够简单。您可以研究的是MySQL配置调优。
如果您的表是InnoDB/XtraDB (如果不是,我建议使用这些引擎),您可能希望查看innodb_buffer_pool_size变量-使用的索引必须适合内存才能获得查询的最佳性能。
https://stackoverflow.com/questions/11648478
复制相似问题