详细步骤解释:
-
连接管理:
-
客户端请求通过TCP/IP、命名管道、共享内存或Unix域套接字与服务器建立连接。
-
服务器对客户端进行认证,认证成功后分配线程处理请求。
-
-
解析与优化:
-
服务器接收请求并检查查询缓存,如果命中缓存则直接返回结果。
-
如果未命中缓存,进行语法解析,将请求转化为可执行的SQL语句。
-
进行查询优化,生成执行计划。
-
-
存储引擎:
-
调用存储引擎,根据执行计划执行查询。
-
将查询结果返回给客户端。
虽然查询缓存有时可以提升系统性能,但也不得不因维护这块缓存而造成一些开销,比如每次都要去查 询缓存中检索,查询请求处理完需要更新查询缓存,维护该查询缓存对应的内存区域。从MySQL 5.7.20 开始,不推荐使用查询缓存,并在MySQL 8.0中删除。
-