关于MYSQL索引

最近在学习数据库索引的相关知识,写一篇笔记分享整理一下,欢迎感兴趣的小伙伴私信交流啊

先介绍一下我理解的索引吧,索引就像是图书的目录一样能够帮我们快速定位某些数据的信息,官方点说的化是对数据库中一列或者多列的值进行排序的一种结构,MYSQL索引可以极大的提高检索速度。对于少量数据来说无所谓,但是对于大量的数据的时候,一个优秀的索引能够极大的提高我们的效率。

索引的优点:
1.加快检索速度
2.帮助服务器避免排序以及创建临时表
3.可以将随机IO编程顺序IO

索引的缺点:
1.耗费存储空间
2.创建和维护索引都要消耗时间
3.对数据库更改的时候也要动态维护索引
4.如果大部分数据重复的化,索引不会有太大的效果

创建索引的情况:
1.经常需要搜索的列上加索引
2.主键上加索引
3.JOIN上加索引
4.根据范围检索的化加索引(索引会排序,很快)
5.排序的时候加索引
6.where加索引

不需要创建索引的情况:
1.很少使用的列
2.数据很少的或者重复特别多的
3.类型为text,bit,image的
4.修改性能远大于检索性能

索引的命名:
最近读了阿里巴巴编程规范,了解了一个细节,对于主键索引命名因改为pk_索引名,唯一索引应该为uk_索引名,普通索引应该为idx_索引名,其中pk,uk,idx分别代表primary key ,unique key ,index
在这里插入图片描述

MySQL中常用的索引结构(索引底层的数据结构)有:B-TREE ,B+TREE ,HASH 等,今天先简单介绍到这里,关于B-TREE ,B+TREE ,HASH索引的细节下一章在填坑。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会说话的皮卡丘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值