请你说说InnoDB的MVCC
时间: 2024-06-10 13:09:30 浏览: 12
InnoDB的MVCC是指多版本并发控制,它是InnoDB存储引擎的一种实现方式。MVCC通过版本控制的方式,在多个事务对同一数据进行并发访问时,保证数据的一致性和隔离性。具体来说,当一个事务对数据库进行修改时,InnoDB会为该事务创建一个快照,并对该快照进行修改。而在其他事务对同一数据进行访问时,InnoDB会根据访问时间和事务的隔离级别,选择合适的数据版本进行返回,从而实现并发控制。这种方式可以提高数据库的并发性能和可靠性。
相关问题
InnoDB 的 MVCC
InnoDB 的 MVCC(多版本并发控制)是一种用于实现并发访问的机制,它可以提供一定级别的一致性读取。在 InnoDB 中,每个新插入的行都会保存一个当前系统版本号作为行版本号,每个删除的行也会保存一个当前系统版本号作为行删除标识。对于更新操作,InnoDB 会插入一行新记录,并保存当前系统版本号作为行版本号,同时在原来的行上保存当前系统版本号作为删除标识(实际上是通过undo log来备份旧记录)。这样,对于读取操作,可以通过生成一个数据请求时间点的一致性数据快照(Snapshot)来提供一定级别的一致性读取,并且数据库可以提供同一数据的多个版本。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [InnoDB下的MVCC](https://blog.csdn.net/shade7/article/details/119939547)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [InnoDB对MVCC的实现](https://blog.csdn.net/fuzhongmin05/article/details/91351933)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
InnoDB对MVCC的实现原理
InnoDB对MVCC的实现原理是通过在每行记录中添加两个隐藏的列来实现的,一个是创建时间,一个是过期时间。当一个事务开始时,它会创建一个视图,该视图包含当前数据库中所有未过期的行记录。当一个事务需要读取一行记录时,它会检查该行记录的创建时间和过期时间是否在该事务的视图中,如果是,则可以读取该行记录。如果不是,则该行记录不可见。当一个事务需要修改一行记录时,它会将该行记录的过期时间设置为当前事务的ID,这样其他事务就无法读取该行记录。这就是InnoDB对MVCC的实现原理。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)