MySQL架构

86 阅读1分钟

MySQL是各大互联网公司最受欢迎的开源的关系型数据库之一。那MySQL底层的架构是什么样子呢?今天我们来一起学习一下。

MySQL架构主要分为两层,Server层和存储引擎层。

Server层

组成部分及作用:

  1. 连接器,负责和客户端建立连接。
  2. 查询缓存,提高查询效率,默认是关闭状态,8.0之后的版本已将该模块删除。
  3. 分析器,负责分析客户端发送的SQL的词法、语法是否符合规范。
  4. 优化器,负责针对SQL选择最合适的索引。
  5. 执行器,执行SQL,通过存储引擎提供的接口和存储引擎进行数据交互。

存储引擎层

常见的存储引擎包括

  • Innodb
  • MyISAM
  • Memery

MySQL自带的存储引擎是MyISAM,其他诸如InnoDB等存储引擎是以插件的形式引入MySQL数据库的。数据的存储以及存放的数据格式都是由存储引擎决定的。每个存储引擎都有自己的特点,如Innodb支持事务、行锁、崩溃后的安全恢复等;Memery是基于内存查询的存储引擎,查询速度非常快。

Mysql5.1版本以后默认使用InnoDB存储引擎。