Mysql性能优化(二) mysql的逻辑架构

mysql的逻辑架构

MySQL体系结构描述了MySQL系统的不同组件如何相互关联。MySQL架构基本上是一个客户端 - 服务器系统。MySQL数据库服务器是服务器,连接到MySQL数据库服务器的应用程序是客户端。MySQL体系结构包含以下主要组件。

应用层:

该层是MySQL架构中最顶层的层; 你可以在许多客户端 - 服务器架构中看到同一层。该层包括大多数客户端 - 服务器应用程序通用的一些服务,下面给出了一些服务:

  • 连接处理:当客户端连接到服务器时,客户端为其连接获取自己的线程。来自该客户端的所有查询在该指定线程内执行。该线程由服务器缓存,因此不需要为每个新连接创建和销毁它们。
  • 授权认证:当客户端服务器连接到mysql服务器的时候需要进行授权认证,授权认证基于用户名,客户端主机和客户端用户密码。
  • 安全:客户端成功连接到MySQL服务器后,服务器将检查该特定客户端是否具有针对MySQL服务器发出某些查询的权限。

服务器层:

该层是MySQL Server的核心层,提供了MySQL Server数据库系统的所有逻辑功能,该层可以分为如下不同的组件:

  • 系统管理
  • SQL 接口
  • SQL 解析器
  • 查询优化器
  • 缓存

SQL解析器的作用:

解析器的作用主要是解析查询语句,最终生成语法树。首先解析器会对查询语句进行语法分析,如果语句语法有错误,则返回相应的错误信息。语法检查通过后,解析器会查询缓存,如果缓存中有对应的语句,就直接返回结果不进行接下来的优化执行操作。

查询优化器的作用:

优化器的作用主要是对查询语句进行优化,包括选择合适的索引,数据的读取方式。

缓存的作用:

包括全局和引擎特定的缓存,提高查询的效率。如果查询缓存中有命中的查询结果,则查询语句就可以从缓存中取数据,无须再通过解析和执行。这个缓存机制是由一系列小缓存组成,如表缓存、记录缓存、key缓存、权限缓存等。

存储引擎:

不同的存储引擎有不同的特性,适用于不同的场景,详细请查询我的另一篇转发的文章mysql存储引擎

 

 

 

 

 

 

 

发布了54 篇原创文章 · 获赞 15 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览