web请求的Sql执行流程

Sql的执行过程
1、首先通过tomcat分配线程接受用户请求
2、通过数据库驱动包获取线程建立连接
3、SQL解析器对Sql语句,词法分析,语法分析
4、通过查询优化器对Sql语句进行最优执行选出最优索引。
5、查询优化器会调用存储引擎真正去执行SQL
6、存储引擎会调用执行器去执行SQL

存储引擎Sql执行过程 (innodb)
  1、innodb 存储引擎会在缓冲池(Buffer Pool)中查找数据是否存在
  2、如果不存在,去磁盘中加载,放入缓冲池中,select操作共享锁,update独占锁
undo log
  1、innodb 存储引擎加载数据的同时将操作前的记录保存到 undo日志中
redo log
  1、redo 则是记录的是数据被修改之后的值。

更新操作
  1、innodb 会在 Buffer Pool执行数据的更新操作
  2、更新后的数据写入 redo log buffer 中
  3、根据刷盘策略,刷入本地磁盘中,一般是立即写入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值