mysql业务数据库回退_MySQL : 事务处理

MySQL中的事务是一组操作的集合,确保这些操作要么全部成功,要么全部回滚以保持数据一致性。通过关闭自动提交,使用如`start transaction`、`commit`和`rollback`等指令来管理事务。事务具有原子性、一致性、隔离性和持久性的特点,是数据库管理系统中确保数据完整性的关键机制。
摘要由CSDN通过智能技术生成

【事务】一组SQL语句操作单元,组内所有SQL语句,完成一个业务。

若整组成功,意味着组内的全部操作都成功;

反之,若其中任何一条语句失败,意味着整个操作都失败。

操作失败,意味着整个过程都是没有意义的,应使数据库回到操作前的初始状态。

【point】1. 失败后,能回到开始位置;

2. 成功之前,其他用户(进程、规划)不能看到操作内的修改。

【思路】在一组操作之前,设计一个记号(备份点)。

【实现】利用innodb 存储引擎的“事务日志”功能。

执行分为2个阶段:

1. 执行阶段;

2. 将执行结果提交给数据库的阶段;

其中,事务日志便是将执行阶段的结果保存,若用户选择提交,才将执行结果提交给数据库。

(默认的执行方式:自动提交)

需要关闭自动提交功能(存在一个系统变量,autocommit 可以对自动提交进行配置)

1 set autocommit = 0 ; // 0 意味着关闭自动提交功能;1 意味着开启

f2b0b570bb0e6f0f4d9790184a71b8f8.png

若成功,执行 commit 提交结果;

若失败,执行 rollback ,回到起始位置。

--------------------------------------------------------------------------

【常用的事务指令】

1. start transaction 开启事务(作用:关闭自动提交)。

特点:若事务结束了,无论成败,都会提交机制,回到start时的状态(原来是autocommit,就会回到autocommit状态)。

2. commit

3. rollback

【小练习】

1. 指令

2. 为什么会有事务?

自动提交、事务日志。

3. 事务的特点?(ACID)

1) 原子性:对于外界而言,事务中的SQL语句是一个整体;

2) 一致性:在事务执行过程中,数据不受其他操作的影响;

3) 隔离性:事务之间不会相互影响。

4) 持久性:事务一旦提交,意味着对数据库产生了影响,不可以再回退。

内容来源于网络如有侵权请私信删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值