本课程适合有一定MySQL基础的DBA、后端开发工程师、架构师、以及准备面试大厂需要深入理解MySQL原理的求职者。无论你已经使用MySQL多年但对事务隔离级别、MVCC原理一知半解,还是想从源码层面理解InnoDB的并发控制机制,本课程都将带你深入剖析MVCC的核心原理,彻底搞懂InnoDB如何实现高并发读写。
学员将深入理解MVCC(多版本并发控制)核心概念、InnoDB隐藏列(DB_TRX_ID/DB_ROLL_PTR/DB_ROW_ID)、Read View可见性判断、Undo Log版本链、事务隔离级别与MVCC的关系、RC与RR隔离级别下MVCC的差异、快照读与当前读的区别等核心原理,具备深入分析MySQL事务和并发问题的能力。
MySQL的InnoDB存储引擎之所以能支持高并发读写,核心就在于MVCC(多版本并发控制)机制。然而,很多开发者对MVCC的理解停留在表面:
知道有Read View,但不知道可见性判断的具体规则
搞不清楚RC(读已提交)和RR(可重复读)隔离级别下MVCC的差异
不理解为什么InnoDB能实现“读写不互斥”
面试中被问到MVCC原理,答不到核心要点
遇到死锁、幻读等问题时,不知道从MVCC角度分析
深入理解MVCC,是掌握MySQL事务和锁机制的关键。本课程将从底层原理出发,结合图示和源码分析,带你彻底搞懂MVCC的完整实现。
图示化教学:每条数据的版本链、Read View判断流程都有清晰图示
源码级讲解:深入InnoDB隐藏列、Undo Log结构
对比分析:RC与RR隔离级别下MVCC的差异对比
实战验证:通过SQL实验验证MVCC的行为
面试导向:涵盖MVCC高频面试题
课程分为五大模块,共12节视频课:
模块一:MVCC概述(2节)
什么是MVCC?为什么需要MVCC(解决读写互斥问题)
MVCC解决的问题:高并发读写、事务隔离性
模块二:MVCC核心组件(4节)
InnoDB隐藏列:DB_TRX_ID、DB_ROLL_PTR、DB_ROW_ID
Undo Log版本链(INSERT/UPDATE/DELETE Undo的区别)
Read View结构(m_ids、up_limit_id、low_limit_id、creator_trx_id)
事务ID分配机制与递增规则
模块三:Read View可见性判断(3节)
可见性判断的核心逻辑(5种判断情况)
图示讲解:数据版本链的可见性遍历
RC与RR隔离级别下Read View的生成时机差异
模块四:MVCC与隔离级别(2节)
RC隔离级别下的MVCC行为(每次查询生成新Read View)
RR隔离级别下的MVCC行为(首次查询生成Read View)
快照读 vs 当前读的区别与实现
模块五:MVCC总结与面试(1节)
MVCC整体流程总结
高频面试题精讲
