本文作者:kris

MYSQL事务回滚的2个问题分析-mysql事务回滚的2个问题分析怎么写

kris 2025-02-02 12:18:05 2
MYSQL事务回滚的2个问题分析-mysql事务回滚的2个问题分析怎么写摘要: mysql进行回滚事物的时候,是怎么样根据redo log和undo里面记录的sql进行的?undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把N...

mysql进行回滚事物的时候,是怎么样根据redo log和undo里面记录的sql进行的?

undo日志用于存放数据修改被修改前的值,假设修改 tba 表中 id=2的行数据,把Name='B' 修改为Name = 'B2' ,那么undo日志就会用来存放Name='B'的记录,如果这个修改出现异常,可以使用undo日志来实现回滚操作,保证事务的一致性。

对数据的变更操作,主要来自 INSERT UPDATE DELETE,而UNDO LOG中分为两种类型,一种是 INSERT_UNDO(INSERT操作),记录插入的唯一键值;一种是 UPDATE_UNDO(包含UPDATE及DELETE操作),记录修改的唯一键值以及old column记录。

MYSQL事务回滚的2个问题分析-mysql事务回滚的2个问题分析怎么写

图片来源:网络

mysql有自带回滚功能吗?

你指的是事务回滚吗,mysql 的innodb和ndb引擎支持事务,默认事务自动提交,

使用事务回滚需要先关闭自动提交,set autocommit=off,这个是session级别的设置,每次重连需要重新设置

之后你就可以正常使用事务回滚了

文章版权及转载声明

作者:kris本文地址:https://www.damoyx.com/p/29741.html发布于 2025-02-02 12:18:05
文章转载或复制请以超链接形式并注明出处大漠游侠网

阅读
分享