今天起每天都要看,希望可以坚持下去
所看内容
——MySQL逻辑架构
主要知识点
1.三层架构
1.客户端 ——处于最上层,处理连接处理、授权认证、安全等等
2.MySQL服务层——处于中层,查询解析,分析,优化,一些聚合函数,存储过程等都在此层实现
3.存储引擎——处于最下层,负责MySQL负责MySQL中数据的存取和提取
2.优化与执行
优化器的执行不关心存储引擎,但不同的存储引擎提供的容量或某个具体操作的开销信息,以及表数据的统计信息等会影响优化结果
——并发控制概念——同时执行多个任务
为了避免并发时的请求产生冲突,可以使用锁的机制来解决
主要知识点
1.读写锁
读锁(共享锁)和写锁(排他锁)
2.锁粒度
在给定的资源上,锁定的数据多少被称为锁粒度.锁粒度越高,并发程度越高,但同时对系统的性能开销也就越大。
3.锁策略
在锁的开销和数据的安全性之间寻求平衡。
4.表锁
表锁时MySQL中最基本的锁策略,并且是开销最小的策略。
锁机制:会锁定整张表。
在表锁中,写锁也比读锁有更高的优先级,写锁请求可能会被插入到读锁队列的前面
MySQL服务层本身页实现了各种表锁,可以使用命令调用从而忽略存储引擎的锁机制。
5.行级锁
行级锁可以最大程度地支持并发处理(但锁开销也最大)。
只在存储引擎层实现,服务层没有实现