mysql工作流程

1.connector sql交互语言,phpjava

2.系统管理和控制工具

3.连接池 管理缓冲用户连接,线程处理等需要缓存的需求

4.Sql接口接受sql命令,返回查询结果

5.解释器 sql命令传递到解析器进行解析和验证

   分解sql语句成数据结构后边语句的传递都基于这个结构

   解析过程中验证sql的合法性,解析出错不继续解析

6.查询优化器

   Sql语句解析后进行查询之前会进行查询优化,(产生多种执行计划,选择最优)

7.cachebuffer 查询缓存 查询缓存有命中的查询结果就直接去缓存中取数据

  这种缓存机制由一系列小缓存组成 比如表缓存 key缓存 权限缓存

8.engine存储引擎

  和文件打交道的子系统,也是具体进行数据存储和取出数据的地方 插件式

  的文件访问机制

9.数据库一般是由其他编程语言通过sql调用,mysql处理并返回结果

   首先通过connector进行交互,请求会暂存connection pool由管理器管理

   请求从等待队列进入处理队列后,管理器会把请求丢给sql接口

   Sql接口收到请求后,进行hash处理并和缓存结果进程对比,通过匹配就返回结果

   否则丢给解释器-》解析成数据结构验证sql合法-》优化器优化查询计划-》交给存储引擎到磁盘获取数据,返回给程序

 

 

10.缓存查询数据

  存储引擎处理完数据返回给程序时还会保留一份数据到缓存中以便处理下次相同的请求

      执行语句+执行结果-hash 保存到cache

11.cachebuffer区别

 

   Buffer是写缓存 cache是读缓存

 

  

转载于:https://www.cnblogs.com/hellohell/p/6505361.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值