2 mysql 体系架构

2. mysql 体系架构

  1. 连接方式

    • TCP/IP

    • Socket

  2. mysqld程序结构

    1. mysqld程序结构


      mysql程序结构.png
    2. 连接层执行过程

      • 提供连接协议

      • 提供验证

      • 提供专用的连接线程: 接受sql, 返回结果

      
      show processlist;
      
      
    3. SQL层执行过程

      • 接受上层sql语句

      • 语法验证模块:

        • 验证语句语法

        • 验证是否满足sql_mode

      • 语义检查: 判断语句类型

        • DML

        • DDL

        • DCL

      • 权限检查

        检查用户是否有权限

      • 解析器

        在语句执行前, 进行预处理, 生成解析树(执行计划), 生成多种执行方案

      • 优化器

        根据生成的解析树进行判断, 选择最优的执行计划(代价模型: 根据CPU, IO, MEM的耗损评估性能)

      • 查询缓存

        使用redis tair替代缓存查询

      • 提供日志记录

        binlog功能

    4. 存储引擎层执行过程

      • 根据SQL层的执行结果, 从磁盘读取数据

      • 将16进制的数据叫给SQL层结构化为表

      • 连接层的专用线程返回给用户

  3. myqsl数据库结构

    • 逻辑构成:


      逻辑构成
    • 物理结构


      物理结构
    • 表的存储方式

      • 数据表就是一个段, 一个段包含多个区

      • 区包含64个连续的页, 共1M

      • 最小的存储单位, 默认为16k

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容