请说下你对 MySQL 架构的了解?

  • 先看下 MySQL 的基本架构图:

image-20210607164532308

大体来说,MySQL 可以分为 Server 层和存储引擎两部分。

Server 层包括:连接器、查询缓存、分析器、优化器、执行器等,涵盖了 MySQL 的大多数核心服务功能,以及所有的内置函数(如:日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如:存储过程、触发器、视图等等。

存储引擎层负责:数据的存储和提取。其架构是插件式的,支持 InnoDB、MyISAM 等多个存储引擎。从 MySQL5.5.5 版本开始默认的是InnoDB,但是在建表时可以通过 engine = MyISAM 来指定存储引擎。不同存储引擎的表数据存取方式不同,支持的功能也不同。

从上图中可以看出,不同的存储引擎共用一个 Server 层,也就是从连接器到执行器的部分。

发表回复

后才能评论