说说mysql索引

索引的作用就是使我们更快的找到所要的东西,类似于一本书的目录,迅速找到某一章节进行阅读。

mysql常用的两种引擎,分别是myisaminnodb。索引的数据结构是B+树(还没了解B+树的同学可以自行网上查阅),但是具体的实现方式有些不同。



myisam

使用B+树作为索引的数据结构,叶节点的data域存放的是指向真实纪录的地址,画个图说明一下。




innodb:

使用B+树作为索引的数据结构,叶节点的data域存放的是真实纪录,画个图说明一下。


做下笔记,记得更牢,如有差错,欢迎指出补充。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL的基础架构可以分为两层:Server层和存储引擎层。Server层包括连接器、查询缓存、分析器、优化器和执行器等组件,提供了MySQL的核心服务功能,例如连接管理、查询解析、优化和执行等。此外,Server层还包含了所有的内置函数和跨存储引擎的功能,如存储过程、触发器和视图。 而存储引擎层则负责数据的存储和提取,并采用插件式的架构模式支持多个存储引擎,如InnoDB、MyISAM和Memory等。其中,InnoDB是比较常见的存储引擎。 在MySQL的执行过程中,首先会经过连接器、查询缓存、分析器、优化器和执行器等组件。连接器负责与客户端建立连接,并进行身份验证等操作。查询缓存会检查之前是否执行过相同的查询语句,并尝试从缓存中返回结果。分析器则会对查询语句进行语法解析和语义分析。优化器会根据查询语句的复杂度和表的索引等信息,生成多个执行计划,并选择最优的执行计划。最后,执行器会执行选定的执行计划,读取和修改存储引擎中的数据。 需要注意的是,查询缓存的使用需要谨慎。通常情况下,不建议使用查询缓存,因为它的失效频率很高,只要有对一个表的更新,整个缓存都会被清空。因此,对于更新压力大的数据库,查询缓存的命中率会很低。但对于一些静态表的查询,如系统配置表,可以考虑使用查询缓存。 总结起来,MySQL的基础架构包括两层:Server层和存储引擎层。Server层提供核心服务功能和跨存储引擎的功能,而存储引擎层负责数据的存储和提取。在执行过程中,连接器、查询缓存、分析器、优化器和执行器等组件依次参与,并最终由存储引擎执行数据操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值