mysql check执行流程_Mysql执行过程几个问题

几个问题?Mysql 的框架有几个组件,各个组件有什么作用?

Mysql 的server层和存储引擎层各有什么作用?

you have an error in your SQL syntax 这个报错是在词法分析里面还是在语法分析里面?

对于表的操作权限是在哪里进行?1 答:

mysql有五个组件,分别是:

连接器: (客户端和服务端链接,用户名密码的校验)

查询缓存:(mysql 8.0之后默认删除此功能)sql语句(key) => 结果 (value)

分析器: 词法分析和语法分析(词法分析的结果,语法分析器会根据语法规则,判 断你输入的sql语句是否满足mysql语法。如果你的语句不对,就会收到“you havean error in you SQL syntax"提醒。

优化器:优化sql语句,是否有索引,链接方式

执行器:判断你对表有没有执行查询的权限,如果没有机返回没有权限的错误,如下所有(如果在查询缓存中命中缓存,查询也会在优化器调用 Precheck验正权限2 答:

server层包括连接器,查询缓存,分析器(词法语法分析),优化器,执行器等,涵盖了mysql的大多数核心功能,以及所有内置函数(如日期、时间、数学),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。

存储引擎负责数据的存储和提取。其架构模式是插件式的,存储引擎有innodb,myisam,memory。3 答:

这条报错实在分析器中的语法分析报错的。4 答:

执行器,执行器在执行之前会 precheck操作

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值