MySQL创建架构语句_MySql架构

一、我们来看一个结构大致图形

843bfdac7c9fce945792d3642ef956b5.png

二、MySql逻辑架构-连接层

86847811c3a21a3b856ea0867a23ecbd.png

当Mysql启动时候(Mysql服务器就是一个进程),等待客户端连接,每一个客户端连接请求,服务器就创建一个线程来处理,

(如果是线程池的话,则是分配一个空的线程),每个线程独立,拥有各自的内存空间,但是,如果这个请求只是查询的话,没关系,;

但是若是修改数据,很显然,当两个线程修改同一块数据的时候,会引发数据同步问题;

三、MySql逻辑架构-SQL处理层

0cb16d5b1457333e3ebf7a6be50752fc.png

99e635b6b03da26668331f614ac9ed0f.png

四、MySql逻辑架构-SQL处理层

49e81b9a38b33d01471b141305789dd3.png

1. 主要功能:

SQL语句的解析、优化、缓存查询、Mysql内置函数的实现,跨存储引擎功能(所谓跨存储引擎就是说每个引擎都是需要提供的功能(引擎需要对外提供接口)),例如:存储过程、触发器、试图等;

2. 实现步骤:

2.1 如果是查询语句(select语句)

首先会查询缓存是否已经有相应的结果,有则返回结果,无则进行下一步

2.2 解析查询:

创建一个内部数据结构(解析树),这个解析树主要用来SQL语句与语法的解析;

2.3 优化:

优化SQL语句,例如重写查询,决定表的读取书序,以及选择需要的索引等。这一个阶段用户是可以查询的,查询服务器优化器是如何进行优化的,便于用户重构查询和修改相关配置,达到最优化。这一阶段还涉及到存储引擎,优化器会询问存储引擎,比如某个操作的开销信息、是否对特定索引有查询优化等;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值