mysql的优化——索引介绍
后缀为: .MYD 是MyISAM存储引擎的存储的数据文件
后缀为: .MYI 是MyISAM存储引擎的存储的索引文件
注:现在都很少使用MyISAM作为存储引擎了。现在大多采用InnoDB作为存储引擎
聚集索引(聚簇索引):索引和数据要全部放在一起。(叶子节点包含了完整的数据记录)
MyISAM就没有聚集索引。索引和数据是分开的,通过物理地址作为中间人,进行两者的联系
1.为什么InnoDB表主键要使用整型呢?
因为在进行查找某个元素的时候,需要对其索引进行比大小,而整型的索引比大小是最好的,效率很高。
字符串的索引比大小,是把字符串的每个字符逐个转化成整型进行逐个比大小,会进行很多次比较,效率较低。
2.为什么InnoDB表要使用自增的主键呢?
注:为什么大多数的时候都是采用B+树作为索引方法,而不采用hash作为索引方法呢?
hash查找定位很快,效率很高。但是如下图:
使用hash作为索引方法,不能进行范围查找。
而b+树的存储结构是如下图的:
如果要查找索引>20的元素,先定位到索引20的元素位置,再通过指针,顺藤摸瓜,把后面的元素全部获取出来。
如果要查找索引<20的元素,先定位到索引20的元素位置,再通过指针,顺藤摸瓜,把前面的元素全部获取出来。
因为b+树在叶子节点那里,是一个双向链表的结构。(双向链表的具体用法:范围查找)
注:b+树比起b树来说的,进行了叶子节点处,采用双向链表的结构,同时非叶子节点没有数据,减少了冗余。
所以:不建议使用UUID(字符串)。UUID既不自增也不是整型。 但是做数据表的迁移,用UUID会更好一点。
mysql的优化——索引介绍相关推荐
- mysql之优化-索引
一.优化思路 a.表的设计合理化(符合3NF) b.添加适当索引(index[4种:普通索引 主键索引 唯一索引unique 全文索引]) c.分表技术(水平分割,垂直分割) d.读写[写:updat ...
- mysql 性能优化索引、缓存、分表、分布式实现方式。
系统针对5000台终端测试结果 索引 目标:优化查询速度3秒以内 需要优化.尽量避免使用select * 来查询对象.使用到哪些属性值就查询出哪些使用即可 首页页面: 设备-组织查询 优化 避免使用s ...
- mysql count 优化索引_如何通过使用索引在InnoDB上优化COUNT(*)性能
我有一个小而狭窄的InnoDB表,大约有900万条记录.在桌子上count(*)或count(id)桌子上做的速度非常慢(超过6秒): DROP TABLE IF EXISTS `perf2`; CR ...
- mysql 优化方法_Mysql的优化方法介绍
本篇文章给大家带来的内容是关于Mysql的优化方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.应用访问优化1).减少数据访问(Nosql作用) 2).返回更少数据 3). ...
- mysql如何建立索引workbench_如何对MySQL索引进行优化分析
为什么你写的sql查询慢?为什么你建的索引常失效?通过本章内容,你将学会MySQL性能下降的原因,索引的简介,索引创建的原则,explain命令的使用,以及explain输出字段的意义.助你了解索引, ...
- mysql的索引介绍_2
什么样的字段不适合创建索引呢?同样,对于有些列不应该创建索引1. 对于那些查询中很少使用或者参考的列不应该创建索引,就是我查的过程当中,where语句当中没有,这样的东西你不建他,建了反而不是什么好事 ...
- MySQL limit 优化,百万至千万级快速分页:复合索引
2019独角兽企业重金招聘Python工程师标准>>> MySQL 性能到底能有多高?用了php半年多,真正如此深入的去思考这个问题还是从前天开始.有过痛苦有过绝望,到现在充满信心! ...
- 超详细图解!【MySQL进阶篇】SQL优化-索引-存储引擎
1. Mysql的体系结构概览 整个MySQL Server由以下组成 Connection Pool : 连接池组件 Management Services & Utilities : 管理 ...
- 阿里P8架构师谈:MySQL数据库的索引原理、与慢SQL优化的5大原则
MySQL凭借着出色的性能.低廉的成本.丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库.虽然性能出色,但所谓"好马配好鞍",如何能够更好的使用它,已经成为开发工程师的必修 ...
最新文章
- vim下自动排版命令
- [原创]java WEB学习笔记86:Hibernate学习之路-- -映射 n-n 关系,单向n-n,双向n-n
- Python高级语法-详解set机制
- python找出矩阵中的马鞍点_矩阵的马鞍点
- wps数据匹配怎么做_【VK技术分享】数据安全怎么做—静态数据的识别和治理
- WTM系列视频教程:WebApi
- 计算机绘画作品 星空,关于近期绘画作品《星空系列》的自述:
- DAG最长路问题 hdu-1224
- 金笛JDMail邮件服务器帮你应付电子邮件归档危机
- EasyCVR通过Ehome协议接入部分设备显示离线排查报告
- 有趣--等额本息还款
- java不支持bks,java不支持bks
- linux iptables mac,mac下的iptables---pfctl
- 单反镜头上的参数具体意义
- 让HR主动邀请你面试的简历,该如何写?
- win10专业版切换语言失败
- mac xquartz+iterm2
- 视频号云逛万达,商圈数字化丙晟打了个新样板
- fopen()函数详解
- dna分子结构具有抽象_新技术活动,抽象是具有远见的