1、数据库架构
问题1:思考一下如果是你设计一个数据库,你会怎么设置?
首先这里要知道数据库有什么核心功能?

程序实例( 管理逻辑存储)
- 存储管理
- 缓存机制(优化执行效率)
- SQL解析
- 日志管理
- 权限划分(多用户管理)
- 容错机制
- 索引管理(优化查询效率)
- 锁管理(支持并发)
2、数据库执行顺序
-
① 连接器:身份及权限认证
-
② 查询缓存(即将淘汰)
-
③ 分析器
- 词法分析:提取关键词(要干嘛)
- 语法分析:是否正确(对不对)
-
④ 优化器:选择最优方案
-
⑤ 执行器:执行语句,然后从存储引擎返回数据
MySQL = Server 层 + 引擎层
