摘要:的存储引擎架构将查询处理与数据的存储提取相分离。下面是的逻辑架构图第一层负责连接管理授权认证安全等等。存储引擎通过与上层进行通信,这些屏蔽了不同存储引擎之间的差异,使得这些差异对上层查询过程透明。
MySQL的存储引擎架构将查询处理与数据的存储/提取相分离。下面是MySQL的逻辑架构图:
第一层负责连接管理、授权认证、安全等等。
每个客户端的连接都对应着服务器上的一个线程。服务器上维护了一个线程池,避免为每个连接都创建销毁一个线程。当客户端连接到MySQL服务器时,服务器对其进行认证。可以通过用户名和密码的方式进行认证,也可以通过SSL证书进行认证。登录认证通过后,服务器还会验证该客户端是否有执行某个查询的权限。
第二层负责解析查询(编译SQL),并对其进行优化(如调整表的读取顺序,选择合适的索引等)。对于SELECT语句,在解析查询前,服务器会先检查查询缓存,如果能在其中找到对应的查询结果,则无需再进行查询解析、优化等过程,直接返回查询结果。存储过程、触发器、视图等都在这一层实现。
第三层是存储引擎,存储引擎负责在MySQL中存储数据、提取数据、开启一个事务等等。存储引擎通过API与上层进行通信,这些API屏蔽了不同存储引擎之间的差异,使得这些差异对上层查询过程透明。存储引擎不会去解析SQL。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/47176.html
摘要:本篇文章是在读完林晓斌老师的实战课程后所写,在这里也向大家推荐下这个课程,此课程由极客时间出品,是干货满满的专栏,看完绝对有收获。 前言: 上篇文章我们介绍了入门MySQL的基本概念,看完上篇文章,相信你应该了解MySQL的前世今生了吧。本篇文章将带你从架构体系来学习MySQL。我认为学习MySQL架构体系应该是入门阶段必须的,虽然可能看不太明白,暂时也用不到,但是我们心中要有这些概...
MySQL逻辑架构 下图是MySQL的逻辑架构图,展示了MySQL各组件之间如何协同工作: 第一层的服务包括连接处理,授权认证,安全等 第二层架构包含了MySQL大多数的核心服务功能:查询解析、分析、优化、缓存以及所有的内置函数(例如:日期、时间、数学、和加密函数),所有的存储引擎功能都在这一层实现:存储过程、触发器、视图等。 第三层包含了存储引擎。存储引擎负责数据的存储和提取,每个存储引擎都有自...
摘要:哈希索引只有两种引擎支持,引擎默认支持哈希索引,如果多个值相同,出现哈希碰撞,那么索引以链表方式存储。要使或支持哈希索引,可以通过伪哈希索引来实现,叫自适应哈希索引。是为了防止哈希碰撞导致数据不准确。 showImg(http://xiaocao.u.qiniudn.com/blog/logo-mysql.png); 0x00.About 索引(Index)是帮助MySQL高效获取数...
阅读 2315·2023-04-26 01:44
阅读 3253·2021-10-11 10:56
阅读 1873·2021-09-26 09:47
阅读 2270·2021-09-10 10:50
阅读 1191·2019-08-30 15:56
阅读 1927·2019-08-30 15:44
阅读 388·2019-08-29 11:14
阅读 3316·2019-08-26 11:56