-
(链接层)
客户端建立和mysql的链接
-
(服务层)
找连接池验证账号密码和权限信息等
找线程池分配线程(mysql的线程不是tomcat的线程)
sqlAPI负责接收sql,以及返回执行sql后的结果集给用户
sqlapi先到缓存中用sql语句作为键找是否有值,有就直接返回,没有就把sql给解析器
解析器,词法解析,将一段sql拆分成一个个关键词,
//执行顺序 from, on, join,where,group by, having, select, distinct,limit
-
存储引擎层
语法解析后交给优化器,选择消耗资源(io次数,内存占用,cpu利用率)
优化后根据存储引擎决定每次读取的磁盘块大小,默认的innodb 16kb
-
存储层
执行sql找出数据,返回给sqlapi然后返回给用户
mysql执行过程
最新推荐文章于 2024-08-04 19:29:55 发布