写点什么

Mysql 大法 -Mysql 索引失效 VS Mysql 存储引擎

作者:知识浅谈
  • 2022 年 8 月 27 日
    吉林
  • 本文字数:667 字

    阅读完需:约 2 分钟

Mysql大法-Mysql索引失效VS Mysql存储引擎

🍁 作者:知识浅谈,CSDN 博客专家,阿里云签约博主,InfoQ 签约博主,华为云云享专家

📌 擅长领域:全栈工程师、爬虫、ACM 算法

💒 公众号:知识浅谈

🔥 联系方式 vx:zsqtcc


索引大法-Mysql 索引在什么情况下会失效🤞这次都给他拿下🤞


正菜来了⛳⛳⛳

🎈索引失效常见条件

  1. like 模糊查询 %在前边的时候,索引失效。

  2. 字段参与表达式运算,该字段上的索引失效。

  3. 字段作为函数的参数,该字段上的索引失效。

  4. 字段发生隐式转换的时候,该字段上的索引失效。

  5. 聚合索引,查询字段不遵守最做匹配原则。

  6. 但进行范围查询的时候,之后的索引失效。


小结:之索引导致索引失效,首先索引的结构是有序的时候才是有效的,不管发生什么导致查找的时候顺序乱了就会导致索引失效。

🎈存储引擎 InnoDB 与 MyISAM 的区别

对于这两者的区别,主要从以下几个方面进行对比。事务:InnoDB 支持事务,而 MyISAM 不支持事务。索引:InnoDB 支持聚簇索引结构,MyISAM 支持非聚簇索引结构。锁:InnoDB 支持表锁和行级锁,而 MyISAM 只支持表级锁。主键:InnoDB 必须有主键,如果不设置,会默认增加一个主键字段,MyISAM 可以不用设置主键。外键:InnoDB 支持外键,MyISAM 不支持外键。结构:InnoDB 因为是聚簇索引,所以数据和索引存储在一起,只包含表结构文件和数据文件两个文件,因为 MyISAM 是非聚簇的所以索引和数据是分开的,所以就是三个文件结构,表结构文件,索引文件,数据文件。


小结:两者各有优劣,MyISAM 虽然只支持表级锁,但是如果在增删较频繁的环境下,相比于 InnoDB 需要维护较多的行锁,MyISAM 只需要维护表锁即可。

🍚总结

以上是关于 Mysql 索引失效和 Mysql 存储引擎的总结,希望有所帮助。

发布于: 刚刚阅读数: 6
用户头像

知识浅谈

关注

公众号:知识浅谈 2022.06.22 加入

🍁 作者:知识浅谈,InfoQ签约作者,CSDN博客专家,华为云云享专家,阿里云社区签约博主 📌 擅长领域:全栈工程师、爬虫、ACM算法 💒 公众号:知识浅谈 🔥 联系方式vx:zsqtcc

评论

发布
暂无评论
Mysql大法-Mysql索引失效VS Mysql存储引擎_8月月更_知识浅谈_InfoQ写作社区