mysql count 优化索引_如何通过使用索引在InnoDB上优化COUNT(*)性能
我有一个小而狭窄的InnoDB表,大约有900万条记录。在桌子上count(*)或count(id)桌子上做的速度非常慢(超过6秒):
DROP TABLE IF EXISTS `perf2`;
CREATE TABLE `perf2` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`channel_id` int(11) DEFAULT NULL,
`timestamp` bigint(20) NOT NULL,
`value` double NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `ts_uniq` (`channel_id`,`timestamp`),
KEY `IDX_CHANNEL_ID` (`channel_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
RESET QUERY CACHE;
SELECT COUNT(*) FROM perf2;
虽然该语句不是运行得太频繁,但对其进行优化将是不错的选择。根据http://www.cloudspace.com/blog/2009/08/06/fast-
mysql-innodb-count-really-
fast/,这可以通过强制InnoDB使用索引来实现:
SELECT COUNT(id) FROM perf2 USE INDEX (PRIMARY);
解释计划似乎很好:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE perf2 index NULL PRIMARY 4 NULL 8906459 Using index
什么是/如何COUNT(*)在InnoDB 上优化性能?
mysql count 优化索引_如何通过使用索引在InnoDB上优化COUNT(*)性能相关推荐
- mysql主键创建非聚集索引_什么是聚集索引,非聚集索引,索引覆盖,回表,索引下推...
聚集索引 我们先建如下的一张表 CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',`name` var ...
- mysql查询一个表有哪些索引_如何查看某张数据库表上都有哪些索引(转)
索引使用简介 一. 关于索引的知识 要写出运行效率高的sql,需要对索引的机制有一定了解,下面对索引的基本知识做一介绍. 1. 索引的优点和局限 索引可以提高查询的效率,但会降低dml操作的效率. 所 ...
- 覆盖索引与联合索引_什么是覆盖索引?
前言 要搞明白覆盖索引首先就得明白主键索引和辅助索引的区别,以及查询时引擎的工作方式. 当然,以上都是基于innoDB引擎来说. 主键索引与辅助索引的区别 相信大家也了解过这方面的知识,这里就不展开了 ...
- mysql 四叉树的应用_游戏算法(2):查找优化之四叉树的应用
/** * 四叉树(基于2D平面空间分割)数据结构 * 四叉树或四元树也被称为Q树(Q-Tree). * 四叉树广泛应用于图像处理.空间数据索引.2D中的快速碰撞检测.存储稀疏数据等 * 为提升性能 ...
- mysql导出全部索引_导出数据库所有索引
导出创建自增字段语句: `SELECT CONCAT( 'ALTER TABLE `', TABLE_NAME, '` ', 'MODIFY COLUMN `', COLUMN_NAME, '` ', ...
- mysql查询前段时间_没想到!我在简历上写了“精通MySQL”,阿里面试官跟我死磕后就给我发了高薪offer...
事情是这样的 前段时间面试了阿里,大家也都清楚,如果你在简历上面写着你精通XX技术,那面试官就会跟你死磕到底. 我就是在自己的简历上写了精通MySQL,然后就开启了和阿里面试官的死磕之路,结果就是拿到 ...
- access建立两个字段唯一索引_关于MongoDB唯一索引(Unique)的那些事
写在前面 关于什么是索引以及唯一索引这里就不做说明了,不清楚的可以自行谷歌或者百度.是什么引起我写这篇文章呢,这来自于之前项目中的一个问题. 我们用的是MongoDB数据存储用户信息,用户表中曾经用户 ...
- mysql数据库恢复数据_【技术分享】使用Innodb存储引擎的mysql数据库恢复
作者:维一零 预估稿费:400RMB(不服你也来投稿啊!) 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 前言 某天,在测试一张新数据表的字段时,由于在phpmyadmin不断 ...
- mysql delete limit用法_你习惯delete语句后带上limit吗
声明:本文基于MySQL讲解. 先不说习惯不习惯的,很多人也许会惊讶:还可以这样操作?其实,大家对这个操作比较陌生,也不奇怪.因为,学海无涯呀~ 语法 这个用法的详细语法是这样的:delete fro ...
最新文章
- LCS最长公共子序列和LIS最长上升子序列——例题剖析
- Unable to open the physical file XXX.mdf
- Oracle数据库进程杀不掉,求助oracle进程杀不死问题
- mysql 常见错误_mysql常见的错误提示问题处理小结
- js兼容注意事项--仅供参考
- Codeforces Round #401 (Div. 2) D. Cloud of Hashtags
- JDK1.8中String类的intern()方法学习
- 超级棒的免费前端学习路线
- Linux文本编辑器之vim
- 训练及优化神经网络基本流程之第0到6步
- Python的subprocess模块(一)
- 题目:身份证录入系统 一、语言和环境 a)实现语言Java, 使用Android开发环境实现《身份证录入系统》APP。
- ELK 索引抽取模板(中文索引配置not_analyzed,才能在kibana中使用terms)
- 3Dtouch开发内容
- 详谈SSD硬盘接口: SATA、mSATA 、PCIe、M.2和U.2
- 【Codeforces】【161Div2】
- hadoop是什么语言
- Sqli-labs Less7
- 基于RT-Thread+RA6M4的远程开机助手
- 镜像和分光采集的网卡接入方法
热门文章
- ios 主题切换 思路_iOS 使用 NSObject 的分类实现快速切换主题
- linux关机方法有哪些?有何区别_Linux关机命令大全:Linux各关机命令之间的区别和用法...
- LwIP应用开发笔记之四:LwIP无操作系统TFTP服务器
- stm32滴答计时器_stm32笔记:Systick系统滴答定时器
- python通讯录运用的知识点_案例驱动式Python学习--通讯录存取
- pythongui显示图片_opencv2.4.13+python2.7学习笔记--opencv中的Gui特性--图片:读图像,显示图像,保存图像...
- 挂机宝装mysql_挂机宝安装
- 拓扑排序排课系统_视频结构化人脸布控系统
- linux协议栈劫持,Linux系统优化之TCP协议栈优化-基本篇1
- 电大计算机网考上机操作题,电大计算机上机考试模拟题及答案 (1)