标题索引
追朔原因
软件结构
文件分类
总结分析
追朔原因
提及数据系统让人望其项背、难以起及,思考良久日:"不识庐山真面目,只缘身在此山中",此山看彼山或许才能识得彼山雄壮真容,为识数据库大山,望一步一印爬彼山。
软件结构
数据库系统软件系统自称数据存储的生态系统,因此类似完整操作系统,拥有不同引擎、连接接口、管理系统、线程等等完整的生态系统节点,具体可参考如下官方结构图:
图1-1 mysql数据库系统结构图
由图可知数据系统主要由Connectors、Connection pool、Management Services、Utillties、SQL interface、Parser、Optimizer、Caches&Buffers和Pluggable Storage Engines组成。
Connectors:是连接数据库的组件,不同开发语言及不同的应用场景所用的数据库连接管理工具不同,其主要目的是连接登陆管理数据库。
Connection Pool:由图可知在线程池的组件中又有各个子功能,分别如下:
Authentication:客户端验证功能
Thread Reuse:线程重用功能,当线程处理完请求会并不会销毁线程,而是调会空闲线程池中以供处理其他请求;
Connetion limits:连接限制,由线程池中的线程数量决定连接数量;
Check Memory:内存资源检测。
Management Services & Utillties:服务器的管理如备份、备份恢复、集群配置等等相关配置文件;
SQL interface:
DML,DDL,Stored Procedures Views,Triggers等SQL语句的接口功能
Parser:解析器,SQL语句通过在解释器进行查询授权的权限;
Optimizer:通过将SQL语句进行优化,优化后进行路径查询;
Storage Engines:不同的存储引擎,引擎不一致存储方式和存储结构等不一致;
File system:文件所存储的文件系统;
File & logs:文件存储及日志文件的的相关信息,如Redo、Undo、Data、Index、Binary、Error、Query and Slow;
文件分类
在数据文件基本上分为两大类数据文件和日志文件
数据文件:数据库文件和索引文件
日志文件:重做日志、撤销日志、二进制日志、错误日志、查询日志、慢查询日志和中继日志