MySQL—架构原理

1.1 应用架构演变架构V1.0 - 单机单库 —>架构V2.0 - 主从架构—>架构V3.0 - 分库分表—>架构V4.0 - 云数据库1.2 体系架构网络连接层服务层(MySQL Server)存储引擎层(Pluggable Storage Engines)系统文件层(File System)1.3 运行机制①建立连接(Connectors&Connection Pool)通过客户端/服务器通信协议与MySQL建立连接。MySQL 客..
摘要由CSDN通过智能技术生成

1.1 架构演变 

不同并发访问量和数据量级别下的架构演变过程:

架构V1.0 - 单机单库 —>架构V2.0 - 主从架构—>架构V3.0 - 分库分表—>架构V4.0 - 云数据库

  • 单库

优点:简单易于维护

缺点:数据量瓶颈,读写压力大,可用性差

  • 主从

优点:高可用,缓解读写压力

缺点:写压力,数据容量有限

  • 分库分表

优点:高可用,并发程度高

缺点:数据一致性问题,维护成本高

1.2 体系架构

体系架构大致分为网络连接层服务层存储引擎层系统文件层

一、网络连接层

客户端连接器(Client Connectors):提供与MySQL服务器建立的支持。目前几乎支持所有主流
的服务端编程技术,例如常见的 Java、C、Python、.NET等,它们通过各自API技术与MySQL建立连接。

二、服务层(MySQL Server)

服务层是MySQL Server的核心,主要包含系统管理和控制工具、连接池、SQL接口、解析器、查询优化器和缓存六个部分。

  • 系统管理和控制工具(Management Services & Utilities):例如备份恢复、安全管理、集群管理等。
  • 连接池(Connection Pool):负责存储和管理客户端与数据库的连接,一个线程负责管理一个连接。维护管理连接:
  • SQL接口(SQL Interface):用于接收客户端发送的各种SQL命令,并且返回用户需要的查询结果。比如DML、 DDL 、存储过程、 视图、 触发器等;
  • 解析器(Parser):负责将请求的SQL解析成一个“解析树”,根据规则进一步检查解析树合法性。
  • 查询优化器(Optimizer):当解析树通过语法检查后,将交由优化器将其转化为执行计划,然后与存储引擎交互。
  • 缓存(Cache & Buffer):缓存机制是由一系列小缓存组成。比如表缓存,记录缓存,权限缓存,引擎缓存等。如果查询语句有命中的结果,则直接在查询缓冲中取数据


三、存储引擎层(Pluggable Storage Engines)

        负责MySQL中的数据存储和提取,与底层系统文件交互。是插件式的,服务器中的查询执行引擎通过接口和存储引擎进项通信,接口屏蔽了不同存储引擎的差异。


四、系统文件层(File System)

        负责将数据库的数据和日志存储在文件系统中,并完成与存储引擎的交互,是文件的物理存储层。主要包括日志文件,数据文件,配置文件,pid文件,socket文件等。

1.3 运行机制

①建立连接(Connectors&Connection Pool)通过客户端/服务器通信协议与MySQL建立连接。MySQL 客户端与服务端的通信方式是 “ 半双工 ”。对于每一个 MySQL 的连接,时刻都有一个线程状态来标识这个连接正在做什么。

②查询缓存(Cache&Buffer)这是MySQL的一个可优化查询的地方,如果开启了查询缓存且在查询缓存过程中查询到完全相同的SQL语句&#

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值