高性能Mysql读书笔记(1)- Mysql 的逻辑架构

1.1    Mysql的逻辑架构

      

     第一层主要是授权认证,连接处理等,每个客户端连接都会拥有一个线程,5.5以后有线程池插件。

     第二层是核心服务层,所有的查询、优化、缓存内部函数都在这一层实现,所有跨存储引擎的实现也都在一层实现:存储过程、触发器、视图。

     第三层存储引擎负责数据的存储和提取,服务器通过API和存储引擎通信,API包含几十个函数,用户执行比如“开始一个事物,或者根据主键查询一条记录等”,但是存储引擎不会分解sqlInnoDB会解析外键),不同存储引擎不会相同通信,只是简单相应上层的需求。

 

 

1.2.读写锁

      处理并发时有两种锁即共享锁和排他锁或者叫读锁、写锁,写锁是排他的在写的时候会阻塞其他的读锁和写锁。

      一般有两种锁 表锁和行级锁(InnoDBXtraDb在存储引擎实现了行级锁)

 

1.3多版本的并发控制

       InnoDB实现并发控制是通过两个隐藏的列,一个是创建时间,一个是过期时间,存储的不是实际的时间值而是版本号。每开始一个新的事物版本号会递增,

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章