mysql5.6.19突然质疑为什么指数不能用

表结构非常简单。


创建表(` oplogs `
` ID ` int(10)符号的非空auto_increment,
`种` varchar(45)不为空的默认,
` OP ` varchar(100)不为空,
`用户` varchar(25)不为空的默认,
` IP ` varchar(16)不为空的默认,
`更新时间戳不`零违约current_timestamp更新current_timestamp,
主键(id)
auto_increment = 34896 = MyISAM引擎默认的字符集utf8 row_format =固定)


有34895个结果

SQL查询语句是:


选择张,a.kind,a.op,a.user,a.ip,a.updatetime从oplogs为,,和a.kind,


在5.6.19案例

用PHP读取内容并显示

第一次显示结果需要3.5秒。

但配置相同

在Linux下5.5.38

它只需要大约0.7秒。

一个奇怪的情况

然后将解释结果执行为5.6,如下所示:



同样的数据解释结构如下:



比较是很明显的。主要的原因是,当oplogs排序,行线变化太大了。完成遍历操作。第一个索引用于造成差异,但原因尚未找到。谁知道呢