是这样的
做了一个采集购物站,在dx_gd_goods里存了2千万条数据,以类别建索引,在where后根类别ID,查询的时候,开始的时候有点慢,后面紧接着的几次查询速度还比较快,但是好景不长,后面又非常慢了,是非常的慢,慢得后面mysql都超时了,都查询不出来数据。用explan 看信息时,是用了索引的,查询type 为 range后来想分一区,以类别分区,分区后,开始的前7次8次查询速度还是非常快的,如果在接着查询,问题与上面一样,mysql超时了,都返回不了数据。
用explan 看信息时,是用到了分区的,查询type 为 all我的mysql版本 5.1;这种情况不知道我怎么解决啊,我现在是无解了。
做了一个采集购物站,在dx_gd_goods里存了2千万条数据,以类别建索引,在where后根类别ID,查询的时候,开始的时候有点慢,后面紧接着的几次查询速度还比较快,但是好景不长,后面又非常慢了,是非常的慢,慢得后面mysql都超时了,都查询不出来数据。用explan 看信息时,是用了索引的,查询type 为 range后来想分一区,以类别分区,分区后,开始的前7次8次查询速度还是非常快的,如果在接着查询,问题与上面一样,mysql超时了,都返回不了数据。
用explan 看信息时,是用到了分区的,查询type 为 all我的mysql版本 5.1;这种情况不知道我怎么解决啊,我现在是无解了。
select * from dx_gd_goods where t_id >= 100101000 and t_id<100102000 limit 0,20
这SQL应该不是很慢。
t_id 没有索引,t_id 与商品ID是一个主键,应该不是索引的关系,等会我建一个索引试试吧。
你可以贴出explain select............................. ; 结果看看。
如果有了
那么type 就会变成 index
刚才试了,但是我的问题还是没有解决。还是会出现查询越来越慢的情况。
分区的话需要按 t_id 分