使用同一条件字段,不同条件值,速度慢了很多,求解! 查询慢索引缓存 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 第一 查询的时候 可以 在 select后面加上 sql_no_cache 这样就可以保证不使用缓存第二 请问你的表是否做过分区?第三 贴出1月份和2月份的explain对比 1、试过加 sql_no_cache 不过好像没有作用 查过一次以后还是会快,所以只好每次执行,都重启一下mysql。2、没有做过表分区3、1月份2月份这样看来好像1月的查询没有使用到索引呢 注意一下where sdate>='2014-02-01' and sdate<='2014-02-28'; 的范围,当这个范围过大时,MYSQL认为大部分记录是符合条件的,则不会再走索引。 因为全表扫描的时候是顺序读取,是很好的IO读取方式而索引扫描在不是主键索引的时候,会先定位索引位置,根据索引定位到主键位置,最后得到具体的数据,这些IO都属于随机读取所以在扫描的数据很大的时候,有的时候全表扫描的效率比索引要好 1、mysql重启后,5.5版本及以下版本的innodb buffer是不缓存数据的,需要读一次数据,除非使用5.6版本2、可以试下ANALYZE TABLE3、如果不行,加上FORCE index试试 MySQL语句的转化 求推荐GUI工具查询页面性能查的sql sql语句 mysql有没有方法取得本机的MAC啊?谢谢 mysql5.1新特性用的人多吗?存储过程、货币 在Extjs页面的文本框中按回车mysql出现乱码 如何修改一个已存在的存储过程呢?为何 alter procedure 报错呢? jjj 同一个事件代码,我分别在2个数据库中创建的,为什么执行时间不一样? 从数据库的写入问题 mysql根据排名区间修改字段问题 mysql创建存储过程声明游标问题
1、试过加 sql_no_cache 不过好像没有作用 查过一次以后还是会快,所以只好每次执行,都重启一下mysql。
2、没有做过表分区
3、1月份
2月份
这样看来好像1月的查询没有使用到索引呢
2、可以试下ANALYZE TABLE
3、如果不行,加上FORCE index试试