Mysql数据库架构设计详解
1. Msql 架构概览
1. Msql 架构概览
MySQL架构设计分为四层,分别是连接层、服务层、引擎层和存储层。
与其他数据库相比游戏角色,MySQL 有点不同,它的架构可以在很多不同的场景中得到很好的应用和发挥。主要体现在存储引擎的架构上。插件式存储引擎架构将查询处理与其他系统任务以及数据存储和提取分离。这种架构可以根据业务的需要和实际需要选择合适的存储引擎。
1.连接层
它是一个基于 tcp/ip 安全连接的客户端。
最上层是一些客户端和连接服务,包括本地 sock 通信和大部分基于客户端/服务器工具的 tcp/ip-like 实现
沟通。主要完成一些类似的连接处理、授权和认证,以及相关的安全方案。在这一层,引入线程池的概念,为通过认证和安全访问的客户端提供线程。同样在这一层上,可以实现基于 SSL 的安全连接。服务器还验证它对每个安全访问的客户端的操作权限。
2.服务层
负责sq的接收、解析、优化、缓存等操作。
3.引擎层
是存储引擎。
存储引擎层,存储引擎真正负责MySQL中数据的存储和提取游戏引擎架构 密码,服务器通过API与存储引擎通信。不同的存储引擎有不同的功能,我们可以根据自己的实际需要进行选择。
常见的是innodb和Myisam。
MyisamInnodb
1myisam 是默认表类型 不是事务安全 innodb 支持的东西
2myisam 不支持外键 Innodb 支持外键
3myisam 支持表级锁(不支持高并发,主要是读) innodb 支持行锁(共享锁、排他锁、意向锁),粒度更小,但是在执行无法确定扫描范围的SQL语句时,innodb也会锁定整个表
5myisam 在磁盘上存储了三个文件。frm(存储表定义) .myd(存储表数据) .myi(存储表索引) Innodb 磁盘存储表空间数据文件和日志文件,innodb 表大小只限制操作系统的大小
6myisam使用非聚集索引,索引和数据分离,只缓存索引innodb使用聚集索引游戏引擎架构 密码,索引和数据存在于一个文件中
7myisam保存表中的具体行数,所以innodb不会很快保存count
5.存储层
数据存储层主要将数据存储在裸设备上运行的文件系统上,完成与存储引擎的交互。
是存储文件。
———————————————
版权声明:本文为CSDN博主“精杰先生”原创文章,遵循CC4.0 BY-SA版权协议。转载请附上原文出处链接和本声明。
原文链接: