当前位置:Gxlcms > 数据库问题 > 带你认识 MySQL 之 MySQL 体系结构

带你认识 MySQL 之 MySQL 体系结构

时间:2021-07-01 10:21:17 帮助过:2人阅读


这两个词有时可以互换使用,但两者的概念完全不同。在 MySQL 中,实例和数据库通常关系是一 一对应的,即一个实例对应一个数据库,一个数据库对应一个实例。但是,在集群情况下,可能存在一个数据库可被多个实例使用的情况。

体系结构


MySQL 是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如 Unix/Linux、Windows、Mac 和 Solaris。各种系统在底层实现方面各有不同,但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。
技术分享

MySQL 由以下几部分组成:
  • Connectors:不同语言中与 SQL 的交互

技术分享

max_connections:就是整个MySQL实例的最大连接数限制           max_user_connections:是单个用户的最大连接数,这里未指明是哪个用户,是任意一个用户。
  • Management Serveices & Utilities:系统管理和控制工具

备份和恢复的安全性,复制,集群,管理,配置,迁移和元数据。
  • Connection Pool:连接池

进行身份验证、线程重用,连接限制,检查内存,数据缓存;管理用户的连接,线程处理等需要缓存的需求。
  • SQL Interface:SQL 接口

进行 DML、DDL,存储过程、视图、触发器等操作和管理;用户通过 SQL 命令来查询所需结果。
  • Parser:解析器

查询翻译对象的特权;SQL 命令传递到解析器的时候会被解析器验证和解析。
  • Optimizer:查询优化器

访问路径的统计数据;
技术分享

在 MySQL 优化语句过程中,可以通过设置 optimize_switch 控制优化行为。在生产环境上,某时间段 MySQL 服务器压力特别大,load 一度达到了 100,查询发现数据库中有大量的 sql 语句 state 状态 result sorting ,result sorting 这种排序特别消耗 cpu 和内存资源。抽取其中的一条 sql 查看执行计划。
  • Cache 和 Buffer:查询缓存

全局和引擎特定的缓存和缓冲区;
技术分享

  • Engine:存储引擎

技术分享

MySQL 的 Windows 版本默认存储引擎为 InnoDB,InnoDB 支持事务,并且提供行级的锁定。

结束语


想要认识 MySQL,这里仅仅是个开始,在后续的学习中,我还会不定时的跟大家分享,同时,小伙伴们有新的想法也可以跟我一块交流交流。

版权声明:本文为博主原创文章,未经博主允许不得转载。

带你认识 MySQL 之 MySQL 体系结构

标签:mysql   数据库   存储   

人气教程排行