摘要:
锁是实现事务隔离性最广泛使用的技术。本文主要分享InnoDB中锁的设计与实现。 锁的定义 下面列举innodb支持的锁。 行级锁 共享锁:S锁,允许事务读一行数据 排他锁:X锁,允许事务删除或更新一行数据 X S X 不兼容 不兼容 S 不兼容 兼容 X锁与任何的锁都不兼容,而S锁仅和S锁兼容。 注 阅读全文
摘要:
事务的定义 事务的基本要素(ACID) 原子性:Atomicity,整个数据库事务是不可分割的工作单位 一致性:Consistency,事务将数据库从一种状态转变为下一种一致的状态 隔离性:Isolation,每个读写事务的对象对其他事务的操作对象能相互分离 持久性:Durability,事务一旦提 阅读全文
摘要:
本文分享InnoDB如何规划表空间,如何存储表空间元信息以及用户数据。 思考一个问题,如果给你一个文件,让你存储MySql的数据,你会怎么做? 下面是一种比较合理的思路。首先把文件划分成大小相等的块(InnoDB中的页),每次取一块使用。为了管理这些块信息,我们也拿出一块空间,存储每一块空间的位置, 阅读全文
摘要:
最近看了《MySQL技术内幕InnoDB存储引擎》一书,受益良多,对Mysql InnoDB有了进一步的了解。于是根据自己理解和整理的资料,写了一系列深入InnoDB的文章,其中不少知识来着《MySQL技术内幕InnoDB存储引擎》以及《MYSQL内核:INNODB存储引擎》,感谢这两本书的作者,也 阅读全文