MySQL体系结构

体系结构图如下:
体系结构
从上图我们可以看出,mysql由以下几部分组成:

  • 连接池组件
    思想:为解决资源的频繁分配﹑释放所造成的问题,为数据库连接建立一个“缓冲池”。
    原理:预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从
    “缓冲池”中取出一个,使用完毕之后再放回去。
    作用:管理缓冲用户连接、用户名、密码、权限校验、线程处理等需要缓存的需求。

  • 管理服务和工具组件
    系统管理和控制工具,例如备份恢复、Mysql复制、集群等。

  • SQL接口组件
    用户SQL命令接口,进行DML、DDL、存储过程、视图、触发器等操作和管理。

  • 解析器组件
    SQL命令传递到解析器的时候会被解析器解析和验证。解析器是由Lex和YACC实现的(是一个很长的脚本)
    主要功能:
    a.将SQL语句分解成数据结构,并将这个结构传递到后续步骤,以后SQL语句的
    传递和处理就是基于这个结构的
    b. 如果在分解构成中遇到错误,那就说明这个sql语句是不合理的。

  • 优化器组件
    SQL语句在查询之前会使用查询优化器对查询进行优化。它使用的是“选取-投影-联接” 策略进行查询。(Sql执行顺序)

  • 缓冲组件
    查询缓存,如果查询缓存中有查询结果,查询语句可以直接去查询缓存中取数据。
    这个缓存机制是由一系列小缓存组成的。如:表缓存,记录缓存,key缓存,权限缓存等。

  • 插件式存储引擎
    存储引擎是MySql中具体的与文件打交道的子系统,Mysql的存储引擎是插件式的。
    MySql AB公司提供的文件访问层的一个抽象接口来定制一种文件访问机制(这种访问机制就叫存储引擎)。

  • 物理文件
    .支持的文件类型:
    EXT3、EXT4、NTFS、NFS
    .文件内容:
    数据文件、日志文件

发布了42 篇原创文章 · 获赞 33 · 访问量 7万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览