主页> seo培训> 【seo技术】MySQL体系结构详解
麻雀虽小,五脏俱全。MySQL 虽然以简单著称,但其内部结构并不简单,seo优化培训,本节主要介绍 MySQL 的整体架构组成。
学习 MySQL 就好比盖房子,如果想把房子盖的特别高,地基一定要稳,基础一定要牢固。学习 MySQL 数据库前要先了解它的体系结构,这是学好 MySQL 数据库的前提。
MySQL 由连接池、SQL 接口、解析器、优化器、缓存、存储引擎等组成,可以分为三层,即 MySQL Server 层、存储引擎层和文件系统层。MySQL Server 层又包括连接层和 SQL 层。如下是官方文档中 MySQL 的基础架构图:
MySQL基础架构图
上图中,Connection pool 为连接层,Management Services & Utilities ...Caches & Buffers 为 SQL 层,Pluggable Storage Engines 为存储引擎层,File system、Files & Logs 为文件系统层。
Connectors 不属于以上任何一层,可以将 Connectors 理解为各种客户端、应用服务,主要指的是不同语言与 SQL 的交互。
1. 连接层 应用程序通过接口(如 ODBC、JDBC)来连接 MySQL,最先连接处理的是连接层。连接层包括通信协议、线程处理、用户名密码认证 3 部分。
通信协议负责检测客户端版本是否兼容 MySQL 服务端。
线程处理是指每一个连接请求都会分配一个对应的线程,相当于一条 SQL 对应一个线程,一个线程对应一个逻辑 CPU,在多个逻辑 CPU 之间进行切换。
密码认证用来验证用户创建的账号、密码,以及 host 主机授权是否可以连接到 MySQL 服务器。
Connection Pool(连接池)属于连接层。由于每次建立连接都需要消耗很多时间,连接池的作用就是将用户连接、用户名、密码、权限校验、线程处理等需要缓存的需求缓存下来,下次可以直接用已经建立好的连接,提升服务器性能。
2. SQL层 SQL 层是 MySQL 的核心,MySQL 的核心服务都是在这层实现的。主要包含权限判断、查询缓存、解析器、预处理、查询优化器、缓存和执行计划。
权限判断可以审核用户有没有访问某个库、某个表,或者表里某行数据的权限。
查询缓存通过 Query Cache 进行操作,如果数据在 Query Cache 中,则直接返回结果给客户端,不必再进行查询解析、优化和执行等过程。
查询解析器针对 SQL 语句进行解析,判断语法是否正确。
预处理器对解析器无法解析的语义进行处理。
查询优化器对 SQL 进行改写和相应的优化,并生成最优的执行计划,就可以调用程序的 API 接口,通过存储引擎层访问数据。
Management Services & Utilities、SQL Interface、Parser、Optimizer 和 Caches & Buffers 属于 SQL 层,详细说明如下表所示。
名称 说明
Management Services & Utilities MySQL 的系统管理和控制工具,包括备份恢复、MySQL 复制、集群等。
SQL Interface(SQL 接口) 用来接收用户的 SQL 命令,返回用户需要查询的结果。例如 SELECT FROM 就是调用 SQL Interface。
Parser(查询解析器) 在 SQL 命令传递到解析器的时候会被解析器验证和解析,以便 MySQL 优化器可以识别的数据结构或返回 SQL 语句的错误。
Optimizer(查询优化器) SQL 语句在查询之前会使用查询优化器对查询进行优化,同时验证用户是否有权限进行查询,缓存中是否有可用的最新数据。它使用“选取-投影-连接”策略进行查询。
例如 SELECT id, name FROM student WHERE gender = "女";语句中,SELECT 查询先根据 WHERE 语句进行选取,而不是将表全部查询出来以后再进行 gender 过滤。SELECT 查询先根据 id 和 name 进行属性投影,而不是将属性全部取出以后再进行过滤,将这两个查询条件连接起来生成最终查询结果。
Caches & Buffers(查询缓存) 如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据。这个缓存机制是由一系列小缓存组成的,比如表缓存、记录缓存、key 缓存、权限缓存等。
3. 存储引擎层 Pluggable Storage Engines 属于存储引擎层。存储引擎层是 MySQL 数据库区别于其他数据库最核心的一点,也是 MySQL 最具特色的一个地方。主要负责 MySQL 中数据的存储和提取。
因为在关系数据库中,数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)。
4. 文件系统层 文件系统层主要是将数据库的数据存储在操作系统的文件系统之上,并完成与存储引擎的交互。
说明:学习阅读完本节内容,了解 MySQL 体系结构即可,教程后面会详细介绍每个模块。
- 2021-06-13 【seo营销】@十堰人,关系你的钱
- 2019-06-17 企业提高百度权重的思维与技巧
- 2020-01-09 【搜索引擎优化】常见的单页面网
- 2020-07-11 【搜索引擎优化】只要交钱,培训
- 2020-12-28 【北京seo】起亚福瑞迪现车充足
- 2019-11-22 【seo培训】【济南seo培训】SEO经常
- 2019-10-18 【seo工具】最近看到一篇帖子,网
- 2021-05-25 【北京seo平台】大山深处的他们,
- 2020-08-15 【搜索引擎优化】山西太原网站排
- 2020-09-30 【北京seo营销】今年优选:天津网
- 2019-10-17 【北京seo平台】饮料行业如何营销
- 2019-05-17 网站如何将SEO结合营销做推广?
- 2020-07-25 【北京seo实战】微软如何优化 M
- 2019-12-27 【北京seo营销】要从哪些方面进行
- 2020-07-26 【seo工具】驰援武汉,上市公司在
- 2020-05-14 【北京seo营销】赢客互动:以SE
- 2020-06-10 【北京网站优化】广州消费环境持
- 2020-08-24 【seo培训】宜昌seo优化招商项目热
- 2021-08-25 【北京seo】打造人民满意的基础教
- 2021-11-05 【seo工具】企业网站更适合整站优
- 2020-05-17 【北京seo】「seo实战」seo蜘蛛软件
- 2021-12-23 【seo工具】广州SEO优化:文章更新
- 2021-04-06 【seo培训】百度有网络优化
- 2020-05-31 【北京seo平台】黑帽SEO泛目录批量
- 2022-01-01 【seo是什么】金融营商环境持续优
- 2020-07-28 【北京seo实战】关于财通证券资产
- 2020-06-01 【北京seo教程】2019“跨境电商与
- 2020-08-01 【北京网站优化】四川已培训卫生
- 2021-10-10 【seo教程】惊云SEO优化技巧
- 2022-05-31 【seo培训】企业网站该如何进行
- 2019-05-13 网络优化公司有哪些标准?
- 2019-05-28 网站建设不同周期之间有何关联
- 2019-06-04 五种中小型企业不容错过的网络营
- 2019-06-05 seo写作 快速提权seo技术写作自动
- 2019-06-19 【seo技巧】如何有效解决网站排名
- 2019-06-26 【北京seo实战】_自流井区人民法
- 2019-06-29 【北京seo网】_经开区城南街道开
- 2019-09-30 【seo优化】滨海新区一英语培训学
- 2019-10-14 【怎么做seo】「常德网站优化」
- 2019-10-15 【北京seo教程】「湘潭网站seo」让
- 2019-10-18 【北京seo】以前在阿里南通渠道商
- 2019-10-19 【北京seo实战】腾讯微博怎么拉黑
- 2019-10-22 【搜索引擎优化】讲实话,支付宝
- 2019-10-26 【北京网站优化】今天和大家一起
- 2020-05-13 【北京seo实战】福州SEO培训(搜索
- 2020-05-13 【怎么做seo】北京网站优化SEO培训
- 2020-06-06 【北京seo】宝山区网站关键词优化
- 2020-06-08 【北京seo网】付昊桓:超算软件研
- 2020-06-09 【搜索引擎优化】江苏苏州关键词
- 2020-06-09 【seo是什么】全球首个藏文搜索引
- 2020-06-11 【seo营销】深圳南山网络推广最佳
- 2020-06-24 【seo工具】推广共享学堂降低成本
- 2020-07-12 【北京seo平台】著名分析师:为什
- 2020-07-15 【北京seo】苏州热销品互联网推广
- 2020-07-15 【北京seo网】宁德百度关键词推广
- 2020-07-22 【seo教程】关键字排名优化工具价
- 2020-07-26 【seo技术】牡丹江中院举办智能语
- 2020-07-31 【seo优化】项目进到村培训送上门
- 2020-08-01 【北京seo营销】小汉镇农校积极谋
- 2020-08-03 【seo工具】深圳福田销售技巧培训
- 2022-06-17 【seo是什么】SEO 的理想博客文章
- 2022-06-07 【北京seo营销】教育部:坚持普职
- 2022-05-23 【seo是什么】【建议网站运营收藏
- 2022-05-19 【北京网站优化】毕节seo,苏州
- 2022-05-19 【seo技术】塔城黑帽SEO培训,安徽
- 2022-05-19 【北京seo实战】免费seo培训,小程
- 2022-05-10 【seo是什么】抖音排名怎么做——
- 2022-03-12 【北京seo实战】谷歌 SEO 曝光量十
- 2022-02-24 【seo培训】TCP三次握手建立连接的
- 2022-02-09 【北京seo实战】Robin:打造个人品
- 2022-01-11 【怎么做seo】北京市培育和激发市
- 2021-12-29 【seo工具】搜索引擎网站关键词
- 2021-12-11 【北京seo营销】苏州网站优化-服
- 2021-11-25 【seo营销】电影《007无暇赴死在线
- 2021-11-07 【北京seo平台】全市法院民商事审
- 2021-11-04 【搜索引擎优化】郑州SEO培训机构
- 2021-11-01 【北京seo】香飘飘今年前三季度营
- 2021-10-23 【北京seo实战】如何做好网站首页
- 2021-10-22 【搜索引擎优化】广州淘宝开店培
- 2021-10-13 【北京seo营销】点击率 影响排名
- 2021-10-08 【北京seo教程】百度网站导航是什
- 2021-09-23 【seo优化】“北京市优化营商环境
- 2021-08-15 【seo教程】9个网店推广技巧让你
- 2021-08-05 【北京seo平台】咨询下百度seo自动
- 2021-07-30 【北京seo教程】南京SEO软文代写有
- 2021-07-29 【搜索引擎优化】宁波360搜索优化
- 2021-07-22 【北京网站优化】益阳搜索引擎排
- 2021-07-21 【seo技术】杨宽个人博客
- 2021-07-14 【北京网站优化】北京云推速SE
- 2021-06-18 【北京seo教程】作业帮回应裁员:
- 标签列表
-