mysql的sql语句执行流程
发表于:2024-09-23 作者:千家信息网编辑
千家信息网最后更新 2024年09月23日,1、client和server建立连接,client发送sql至server(对应连接器这一过程)2、server如果在查询缓存中发现了该sql,则直接使用查询缓存的结果返回给client,如果查询缓
千家信息网最后更新 2024年09月23日mysql的sql语句执行流程
1、client和server建立连接,client发送sql至server(对应连接器这一过程)
2、server如果在查询缓存中发现了该sql,则直接使用查询缓存的结果返回给client,如果查询缓存中没有,则进入下面的步骤(对应查询缓存这一过程,8.0这一过程已经不存在了,8.0完全抛弃了这个功能)
3、server对sql进行语法分析,识别出sql里面的字符串是否符合标准,比如select关键字不能写错(对应分析器这一过程)
4、server对sql进行语义分析,识别出sql里面的字符串的具体意思是什么,比如T1是表名,C1是列名(对应分析器这一过程。3、4步其实解析的过程,这个解析的过程是分析器的工作不是优化器的工作)
5、server确定sql的执行路径,比如走索引还是全表,多表连接时哪张表先走哪张表后走,当你的where条件的可读性和效率有冲突时mysql内部还会自动进行优化,也就是大家理解的重写where子句(对应优化器这一过程)
6、server对执行sql的用户进行权限检查,比如对表是否有权限执行(对应执行器这一过程)
7、server执行该sql语句,发送结果给client(对应执行器这一过程)
连接器-->查询缓存-->分析器-->优化器-->执行器
如果表 T1 中没有字段 C1,而执行select * from T1 where C1=1会报错不存在C1这个列,这个过程对应上面第4个过程,对应分析器这一过程
如果用户对T1表没有权限,而执行select * from T1 where C1=1会报错对表T1没有权限,这个过程对应上面第6个过程,对应执行器这一过程
过程
分析
分析器
缓存
查询
权限
执行器
字符
字符串
用户
结果
连接器
会报
别出
工作
语句
也就是
关键
关键字
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国网络安全法开始时间
名词解释对等网络技术
正式服 服务器选择
环境数据库技术问题
个人服务器如何连接http
数据库技术是指什么
没有服务器如何使用微信登录
学习软件开发需要打字吗
超凡先锋服务器爆满可以换吗
江阴软件开发服务电话
pacs服务器网络负载高
公安局网络安全宣传片
深圳奇酷互联网络科技有限公司
csf网络安全框架 包括
网络安全周2021电信主题
腾讯邮件接收服务器
广州雷瑟网络技术有限公司
数据中心网络技术红宝书
网络安全法亮点论文
我是网络安全小卫士ppt
c 软件开发方案
什么是网络安全使用
两会网络安全风险评估
怎么抢红包软件开发
天津服务器虚拟化系统服务器
软件开发使用工作流的优缺点
南昌4u服务器散热器供应商
xls文档导入数据库
张店工厂库存软件开发
电脑无法接入到服务器