mysql逻辑架构
一、
连接器Connectors:
语言或工具连接数据库,并与之交互。
jdbc,odbc,php,python...
二、应用层
●Connection Pool(连接池)
分配管理和释放数据库连接。
允许应用程序重复使用一个现有的数据库连接,而不是新建一个,
释放“空闲时间”超过“最大空闲时间”的数据库连接来避免遗漏。
●Management Services &Utillties(管理服务和实用工具)
Backup&Recovery(备份和恢复)
Security(安全)
Replication(复制)
Cluster(集群)
Administration(管理)
Instance Manager(数据库实例管理)
Partitioning(分区)
Workbench、Query Browser、(可视化)
Migration Toolkit(数据库迁移)
INFORMATION_SCHEMA(信息数据库)
三、服务层
●接口SQL interface
DDL(数据定义语言)
create/drop/alter TABLE/VIEW/INDEX/SYN/CLUSTER等
数据定义语言DDL用来创建数据库中的各种对象-----表、视图、索引、同义词、聚簇
DML(数据操纵语言)
insert into/update/delete等
DQL(数据查询语言)
select
DCL(数据控制语言)
用来授予或回收访问数据库的某种特权,
并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。
grant 授权
rollback 回滚
commit 提交
Stored Procedures 存储过程
Trigger 触发器
Views 视图
...
●解析器Parser
Query Translation 查询翻译
Object Privilege 对象权限
●查询优化器Optimizer
Access Paths 访问路径
Statistics 统计学
●高速缓存和缓冲器Caches&Buffers
四、存储引擎层
●Plugglable Storage Engines(插件式存储引擎)
MyISAM InnoDB Cluster ...
五、物理层
文件系统File System
文件和日志Files & Logs
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗