Mysql数据库一次查询过程

目录

查询过程

磁盘IO的过程

磁盘的物理结构

磁盘的顺序读写和随机读写

磁盘IO到底会有多慢

用户查询请求慢的根本原因


查询过程

用户在页面发起一个查询订单列表的请求,项目部署在Tomcat中,Tomcat中的线程接收到用户的请求,然后把请求转发给项目,项目会根据代码去数据库中查询订单的数据,不管是使用原生的JDBC、还是Mybatis、Hibernate等框架,其底层都是先获取一个JDBC连接,通过JDBC和数据库建立连接,然后到MYSQL数据库中执行sql语句。在MYSQL数据库中是如何执行一个sql语句的,如下图:

MYSQL中,也会有线程获取到JDBC连接中的sql语句,然后去执行,线程会把sql语句交给MYSQL中的sql接口,sql接口会转发给sql解析器去解析,比如sql解析器会把一条sql语句中的表名称、WHERE关键字后面的查询条件、以及具体查询哪些字段等信息都解析出来,然后把解析好的信息交给查询优化器处理。

查询优化器会根据sql解析器解析好的sql语句信息,选择一个效率最高的处理方案,来作为执行sql语句的执行计划ÿ

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骆驼整理说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值