MySQL 服务器逻辑架构主要包含三层:
- 第一层是基于网络的客户端/服务器,实现的连接处理、授权认证、安全等。
- 第二层是 MySQL 核心服务功能,包括查询解析、分析、优化、缓存以及所有的内置函数(例如,日期、时间、数学和加密函数),所有跨存储引擎的功能实现:存储过程、触发器、视图等。
- 第三层是存储引擎。存储引擎负责 MySQL 中数据的存储和提取。服务器通过 API 与存储引擎进行通信,这些接口屏蔽了不同存储引擎之间的差异,使得这些差异对上层的查询过程透明。存储引擎 API 包含几十个底层函数,用于执行例如 “开启一个事务” 或者 “根据主键提取一行记录”等操作。但是存储引擎不会解析 SQL(但是 innoDB 是一个例外,它会去解析外键定义),不同存储引擎之间也不会相互通信,而是简单地响应上层服务器的请求。



