MySQL的体系结构是怎样的?
一句话解释:MySQL体系结构分为四层,从上至下分别为:客户端连接层、Server层、存储引擎层、数据存储层。
一张图展示:
详细分析
客户端连接层
该层主要的功能是接收数据库连接、授权认证、安全管理、开启线程池提高线程处理效率。
Server层
该层主要是MySQL的Server层,主要的功能有SQL缓存、SQL的解析器解析SQL、SQL优化器优化SQL语句以及SQL执行器执行SQL。
存储引擎层
该层是数据库的存储引擎层,该层主要是由各类型的存储引擎支持的,比如常用的InnoDB以及类比的MyIsAM两个存储引擎,这些存储引擎主要用于数据存取以及Buffer缓存,以及提供存储引擎的各类特性比如InnoDB存储引擎支持事务的特性和为提供事务开启的Redo Log、Undo Log等。
数据存储层
该层是数据存储的最终层,也是数据库的文件系统,上层存储引擎的Buffer缓存持久化时就会写入到该层的文件系统中。以MySQL为例它的文件系统的底层数据结构是由B-Tree实现的。
引用
- 阿里巴巴Java性能调优实战