SQL执行流程

SQL执行流程

image-20221216102602554

8.0后删除了查询缓存,5.7 也是默认关闭。

两个查询请求在任何字符上的不同(例如:空格、注释、 大小写),都会导致缓存不会命中。因此 MySQL 的 查询缓存命中率不高 。

优化器:选择成本最小的执行计划去执行。逻辑查询优化,物理查询优化。

image-20221216104229999

这种设置方式是session级别的,关闭此次连接后就失效了。

mysql> show profiles;
+----------+------------+-------------------------+
| Query_ID | Duration   | Query                   |
+----------+------------+-------------------------+
|        1 | 0.10196850 | show databases          |
|        2 | 0.00020675 | select atguigudb        |
|        3 | 0.01624650 | SELECT DATABASE()       |
|        4 | 0.00069400 | show databases          |
|        5 | 0.02270850 | show tables             |
|        6 | 0.00281600 | show tables             |
|        7 | 0.03908150 | select * from dmployees |
|        8 | 0.05737375 | select * from employees |
+----------+------------+-------------------------+
8 rows in set, 1 warning (0.05 sec)

mysql> show profile for query 7;
+--------------------------------+----------+
| Status                         | Duration |
+--------------------------------+----------+
| starting                       | 0.000050 |
| Executing hook on transaction  | 0.000005 |
| starting                       | 0.000007 |
| checking permissions           | 0.000005 |
| Opening tables                 | 0.038910 |
| end                            | 0.000016 |
| query end                      | 0.000006 |
| closing tables                 | 0.000004 |
| freeing items                  | 0.000035 |
| cleaning up                    | 0.000046 |
+--------------------------------+----------+
10 rows in set, 1 warning (0.00 sec)
mysql> show profile cpu,block io for query 6;

image-20221216105047546

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值