# 总结

MySQL 拥有分层的架构。上层是服务器层的服务和查询执行引擎,下层是存储引擎。虽然有很多不同作用的插件 API,但存储引擎 API 是最重要的。如果能理解 MySQL在存储引擎和服务层之间处理查询时如何通过 API 来回交互,就能抓住 MySQL 的核心基础架构的精髓。

MySQL 最初基于 ISAM 构建(后来被 MyISAM 取代),后续添加了更多的存储引擎和事物的支持。

存储引擎 API 的架构也也有一些缺点。可选择的存储引擎很多,有时候并非是好事。InnoDB 对于 95% 以上的用户来说都是最佳选择,所以其他的存储引擎可能只是让事情变得复杂难搞,当然也不用否认某些情况下某些存储引擎能更好的满足需求。

Oracle 一开始收购了 InnoDB,之后又收购了 MySQL,InnoDB 和 MySQL 服务器之间可以更快的协同发展。MySQL 依然基于 GPL 协议开放全部的源代码,MySQL 正在变得越来越可扩展和有用。