1. MySQL的技术框架

这里写目录标题

参考文章1:https://www.cnblogs.com/wangjiming/p/10410904.html

在这里插入图片描述

1. 框架概述

简单介绍下:

  1. Connectors:MySQL向外提供的交互接口(Connectors)

Connectors组件是MySQL向外提供的交互组件,如Java、.net、php等语言可以通过改组件来操作SQL语言,实现与SQL的交互。

  1. Management Service & Utilities:管理服务组件和工具组件

提供对MySQL的集成管理,如备份(Backup),恢复(Recovery),安全管理(Security)等

  1. Connection Pool :连接池

负责监听对客户端向MySQL Server端的各种请求,接收请求,转发请求到目标模块。每个成功连接MySQL Server的客户请求都会被创建或分配一个线程,该线程负责客户端与MySQL Server端的通信,接收客户端发送的命令,传递服务端的结果信息等。

  1. SQL Interface :SQL接口组件

接收用户SQL命令,如DML,DDL,视图和存储过程等,并将最终结果返回给用户。

  1. Parser:查询分析器

首先分析SQL命令语法的合法性,并尝试将SQL命令分解成数据结构,若分解失败,则提示SQL语句不合理。

  1. Optimizer:优化器

对SQL命令按照标准流程进行优化分析。

扫描二维码关注公众号,回复: 11895106 查看本文章
  1. Caches & Buffers:缓存组件

缓存和缓冲组件

  1. 可插拔式的存储引擎
    两个常见的存储引擎:
对比项 MyISAM InnoDB
主外键 不支持 支持
事务 不支持 支持
行表锁 表锁,即使操作一条记录也会锁住整个表,不适合高并发操作 行锁,操作时只锁某一行,不对其他行有影响,适合高并发的操作
缓存 只缓存索引,不缓存真是数据 不仅缓存索引还要缓存真实数据,对内存要救较高,而且内存大小对性能有决定性的影响
表空间
关注点 性能 事务
默认安装 Y Y
  1. 文件系统

2. 查询流程

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34088913/article/details/106239269