mysql10---索引优化
D:\MYSQL\mysql-5.7.20-winx64\mysql-5.7.20-winx64\data\WIN-20171216YUR-slow.log是慢日志:SET timestamp=1515143608; select * from emp where empno = 100004; # Time: 2018-01-05T09:14:17.472000Z # User@Host: root[root] @ localhost [127.0.0.1] Id: 6 # Query_time: 0.704000 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 4000000 SET timestamp=1515143657; select * from emp where empno = 100004; # Time: 2018-01-05T09:15:02.444000Z # User@Host: root[root] @ localhost [127.0.0.1] Id: 6 # Query_time: 0.731000 Lock_time: 0.001000 Rows_sent: 1 Rows_examined: 4000000 SET timestamp=1515143702; select * from emp where empno = 100044; # Time: 2018-01-05T09:15:17.827000Z # User@Host: root[root] @ localhost [127.0.0.1] Id: 6 # Query_time: 0.712000 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 4000000 SET timestamp=1515143717; select * from emp where empno = 105544; # Time: 2018-01-05T09:30:59.422000Z # User@Host: root[root] @ localhost [127.0.0.1] Id: 6 # Query_time: 3.686000 Lock_time: 0.001000 Rows_sent: 5 Rows_examined: 4000000 SET timestamp=1515144659; select * from emp where ename='OfjJBN';四种索引(主键索引/唯一索引/全文索引/普通索引)说起提高数据库性能,索引是最物美价廉的东西了。不用加内存,不用改程序,不用调sql,只要执行个正确的’create index’,查询速度就可能提高百倍千倍,这可真有诱惑力。可是天下没有免费的午餐,查询速度的提高是以插入、更新、删除的速度为代价的,这些写操作,增加了大量的I/O。Mysql发现和查询语句是一样的时候会从缓存中取。
添加索引后,只有通过索引来查就快,不通过索引查是不会快的。 .frm是表的结构,.MYD是表的数据,.MYI是索引文件。 只是拷贝.MYD文件到另一个数据库下面,索引要重新建立,因为索引里面包含有原始.MYD数据的原硬盘的地址,即使把.MYI文件拷贝过去也不行。为什么建了索引就会变快(原来0.8秒的变成了0.003秒), 原来数据就是1,2,3,4,5,6,7,不加索引的时候从1一直到4,即使到了4仍然继续向下找,因为不敢保证后面还有没有4,因此要全部检索完毕,所以就慢了。二叉树算法:首先建立索引文件MYI,首先扫描emp有多少数据,然后构建一个二叉树记录中间的6(磁盘硬盘都是有物理地址的),效率是log以2为底N次幂。 Hash算法:
mysql10---索引优化相关推荐
- psql where里有自定义函数慢_阿里P8架构师谈:MySQL慢查询优化、索引优化、以及表等优化总结...
MySQL优化概述 MySQL数据库常见的两个瓶颈是:CPU和I/O的瓶颈. CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候. 磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应 ...
- ElasticSearch基础杂烩-配置-索引-优化
2019独角兽企业重金招聘Python工程师标准>>> ElasticSearch基础杂烩-配置-索引-优化 博客分类: java 前言 ElasticSearch是一个基于Luce ...
- SQLAdvisor美团SQL索引优化建议工具
SQLAdvisor美团SQL索引优化建议工具 前言 Part1:写在最前 SQLAdvisor是美团开源的一款SQL索引优化建议工具,是由美团点评公司技术工程部DBA团队(北京)开发维护的一个分析S ...
- PostgreSQL 电商业务(任意维度商品圈选应用) - json包range数组的命中优化 - 展开+索引优化...
标签 PostgreSQL , range , jsonb , gist , btree_gist , 展开 , array 背景 电商,任意维度商品圈选应用,其中一个查询请求是这样的: 求 &quo ...
- mysql 大量数据 更改索引_Mysql索引数据结构详解与索引优化
本篇文章主要学习了MySQL的索引的数据结构的认识,做一个大概的了解即可. 一.索引 在关系数据库中,索引是一种单独的.物理的对数据库表中一列或多列的值进行排序的一种存储数据结构,它是某个表中一列或若 ...
- mysql key value 排序_MySQL利用索引优化ORDER BY排序语句的方法
创建表&创建索引 create table tbl1 ( id int unique, sname varchar(50), index tbl1_index_sname(sname desc ...
- mysql union查询_一本彻底搞懂MySQL索引优化EXPLAIN百科全书
MySQL逻辑架构介绍 日常在CURD的过程中,都避免不了跟数据库打交道,大多数业务都离不开数据库表的设计和SQL的编写,那如何让你编写的SQL语句性能更优呢? 先来整体看下MySQL逻辑架构图: M ...
- mysql维护索引,mysql 索引优化
Sql代码 CREATE INDEX idx_example ON table1 (col1 ASC, col2 DESC, col3 ASC)CREATE INDEX idx_example ON ...
- MySQL如何利用索引优化ORDER BY排序语句
MySQL索引通常是被用于提高WHERE条件的数据行匹配或者执行联结操作时匹配其它表的数据行的搜索速度. MySQL也能利用索引来快速地执行ORDER BY和GROUP BY语句的排序和分组操作. 通 ...
- MySQL第13天:索引优化
索引优化 一.索引分析 二.索引失效 三.建议 ------------------------------------------------------------------------- 一. ...
最新文章
- hive处理json数据_(转)hive中解析json数组
- 5G NGC — 云原生的 5G 核心网架构演进
- JavaScript随机生成颜色以及十六进制颜色 与RGB颜色值的相互转换
- python组合数据类型有哪些_Python学习之组合数据类型
- zookeeper+kafka集群安装之中的一个
- 题解 P3811 【【模板】乘法逆元】
- 35. 搜索插入位置-LeetCode
- 批量替换 MySQL 指定字段中的字符串
- 北风设计模式课程---享元模式与单例模式区别
- java map遍历_Java中Map集合的两种遍历方式
- 计算机学院学生会宣传稿,计算机与信息工程学院学生会
- Linux链表list_head/hlist_head/hlist_nulls_head的并发性
- 笔记本主板如何测试软件,笔记本硬件检测,小编教你笔记本怎么检测硬件
- 空芯线圈电感计算公式
- 路由器服务器已停止响应,排除路由器挂起故障
- Flink之DataSet迭代计算
- 吃萝卜去口气(口臭)[转]
- 记录——python与华为云对象存储服务OBS
- 用python 画一个美国队长盾牌
- css盒子遮罩层显示与隐藏
热门文章
- 使用Windows远程桌面工具来远程连接控制Ubuntu系统
- nginx报错The program 'nginx' can be found in the following packages
- 力扣题目——1557. 可以到达所有点的最少点数目
- 【PostgreSQL-9.6.3】设置非自动提交
- 1.5.7、CDH 搭建Hadoop在安装之前(定制安装解决方案---配置单用户模式)
- Sharepoint 2010 解决DFWP - Unable to display this Web Part 的问题
- PyCharm无法找到已安装的Python类库的解决方法
- 执行Linux脚本出错,出现No Such file or directory异常
- npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法
- 解决IE、firefox浏览器下JS的new Date()的值为Invalid Date、NaN-NaN的问题