MySQL中的索引

1、什么是索引
索引是表的目录,是数据库中专门用于帮助用户快速查询数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,以此快速定位查询数据。对于索引,会保存在额外的文件中。同时索引也是一张表,该表中存储着索引的值和这个值的数据所在行的物理地址,使用索引后可以不用扫描全表来定位某行的数据,而是通过索引表来找到该行数据对应的物理地址。
2、索引的优缺点
a、优点:
1)建立索引的列可以保证行的唯一性,生成唯一的rowId。
2)索引可以有效缩短数据的检索时间,减少I/O次数。
3)索引可以加快表与表之间的连接。
4)为用来排序和分组的字段建立索引可以加快分组和排序。
b、缺点:
1)创建索引和维护索引需要时间成本,这个成本随着数据量的增大而加大。
2)创建索引和维护索引需要空间成本,每一条索引都需要占据数据库的物理存储空间,数据量越大,占用空间也越大。
3)会降低表的增删改的效率,因为每次增删改,索引需要进行动态维护。
3、索引分类
a、索引类型
1)普通索引
2)唯一索引
3)主键索引
4)组合索引
5)全文索引
b、聚集索引和非聚集索引
聚集索引:也称聚簇索引指数据行的物理顺序与列值(一般为主键的那列)的逻辑顺序相同,一个表中只能拥有一个聚簇索引。
非聚集索引(非聚簇索引):该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同,一个表中可以拥有多个非聚集索引。
c、hash索引与B树索引
hash索引࿱

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值