美文网首页
mysql实践之唯一索引和普通索引如何选

mysql实践之唯一索引和普通索引如何选

作者: 中2庸 | 来源:发表于2021-12-14 17:10 被阅读0次

主键索引:会进行主键约束,并且是唯一索引,生成的索引是主键索引;
唯一索引:主键是特殊的唯一索引,但是唯一索引可以为空值,主键不允许为空,也是二级索引
普通索引:普通索引可以重复,是二级索引;

查询情况下:
  • 普通索引:分两种情况,一种是查询的参数在页尾,这样匹配后还需要查询下一个是否满足条件;
  • 唯一索引:直接匹配后就可以停止检索;
    总结:查询的差异影响并不大
更新情况下:

更新:插入、删除、更新;


image.png

change buffer:innodb引擎的内存,从buffer pool获取,用与存取当前的更新变化,【减少磁盘io】;
应用场景:

  • 普通索引且目标页不在内存时,使用change buffer进行临时存储,当访问更新的数据时、后台定时刷新时、数据库正常关闭时进行merge操作;
  • 唯一索引的情况下并不起作用,因为存在唯一索引需要读取磁盘数据到内存,并判定唯一性,这样直接可以在内存修改,用不上change buffer;
  • 对于历史库,使用机械硬盘的,写多读少的情况下可以起较大作用;

相关文章

网友评论

      本文标题:mysql实践之唯一索引和普通索引如何选

      本文链接:https://www.haomeiwen.com/subject/vvvrfrtx.html