加了索引反而比不加索引查询速度来得慢
时间:2012-10-20
来源:互联网
本帖最后由 marcofly 于 2012-10-20 16:24 编辑
order_copy数据表的数据量:1千万条
创建order_copy的sql
添加索引:
执行sql语句:
SELECT * FROM order_copy WHERE user_id=15;
给user_id添加索引前:17s
给user_id添加索引后:76s
记录在慢查询日志中的信息:
注:user_id是会重复的
order_copy数据表的数据量:1千万条
创建order_copy的sql
CREATE TABLE `order_copy` ( `id` int(10) NOT NULL AUTO_INCREMENT, `shop_id` int(10) NOT NULL, `user_id` int(10) DEFAULT NULL, `user_name` varchar(32) NOT NULL, `food_name` char(64) NOT NULL, `food_price` varchar(12) NOT NULL, `order_time` datetime NOT NULL, `dep_id` tinyint(10) NOT NULL DEFAULT '1', `order_state` varchar(10) NOT NULL DEFAULT '未付款', `order_team` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), ) ENGINE=MyISAM AUTO_INCREMENT=10274827 DEFAULT CHARSET=utf8
添加索引:
执行sql语句:
SELECT * FROM order_copy WHERE user_id=15;
给user_id添加索引前:17s
给user_id添加索引后:76s
记录在慢查询日志中的信息:
# Time: 121020 16:04:47 # Time: 121020 15:43:54 # User@Host: root[root] @ localhost [127.0.0.1] # Query_time: [b]17.846021[/b] Lock_time: 0.001000 Rows_sent: 582308 Rows_examined: 9987858 use dinner; SET timestamp=1350719034; -- ALTER TABLE order_copy ENABLE KEYS; [b]SELECT * FROM order_copy WHERE user_id=5;[/b] # User@Host: root[root] @ localhost [127.0.0.1] # Query_time: [b]76.796393[/b] Lock_time: 0.000000 Rows_sent: 734215 Rows_examined: 734215 SET timestamp=1350720287; -- show INDEX FROM order_copy; [b]SELECT * FROM order_copy WHERE user_id=15;[/b]
注:user_id是会重复的
作者: marcofly 发布时间: 2012-10-20
user_id数据中重复的太多了吧
作者: moguidaxing 发布时间: 2012-10-24
分析表 优化表
作者: phptree 发布时间: 2012-10-26
int(10){:soso_e122:}
作者: 剑枫 发布时间: 2012-10-27
不是慢,估计是你有查询缓存了。explain写的很明显:前面一条语句 未用到索引,且要查找900万条,后面的用到了索引,只要查询50多万。
你 select SQL_NO_CACHE ........... 试试
你 select SQL_NO_CACHE ........... 试试
作者: sunceenjoy 发布时间: 2012-11-05
修一下那个表,也许那个表的索引文件坏了
作者: moguidaxing 发布时间: 2012-11-22
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28