
进入连接层之前会先经过Connectors(不同语言中与SQL的交互)
连接层
由connection pool(连接池)构成
目的:解决资源频繁分配、释放所造成的问题,而连接池的作用相当于一个缓存池。
原理:预先存取一定数量连接在连接池中,如果需要建立数据库连接,会从连接池中取出一个,使用完毕后重新放回连接池。
SQL层
由系统管理和控制工具、SQL接口,解析器,优化器,缓存组成
Management Serveices & Utilities:系统管理和控制工具,用于管理数据库
SQL Interface:SQL接口,接受用户的SQL命令并返回对应查询结果,例如“select * from”
Parser:解析器,验证和解析收到的SQL命令
Optimizer:优化器,在SQL语句进行查询之前进行优化
Cache和Buffer:查询缓存,如果查询缓存有命中的查询结果,查询语句就可以直接从查询缓存中提取数
据.(提高速度\效率)
插件式存储引擎层
Engine:存储引擎,存储引擎是MySql中具体与文件打交道的子系统
原理:插件式,可以理解为需要什么功能,就插入什么类型的存储引擎(方便工作)
物理文件层
用于存放数据文件、日志文件、配置文件以及其它文件