Mysql中默认自动事务autocommit关闭和开启方式、rollback回滚恢复数据的使用方法

文章详细介绍了MySQL的autocommit自动提交事务功能,包括如何查看autocommit状态,通过SET命令临时修改和在my.cnf配置文件中永久修改autocommit状态。同时,讨论了autocommit开启与关闭时回滚(rollback)操作的影响和数据一致性问题。
摘要由CSDN通过智能技术生成


autocommit自动提交事物

MySQL 默认开启事务自动提交模式,每条 SOL 语句都会被当做一个单独的事务自动执行。但有些情况下,我们需要关闭事务自动提交来保证数据的一致性

一、查看autocommit状态

通过命令:SHOW VARIABLES LIKE ‘autocommit’;

1.OFF:关闭状态
在这里插入图片描述

结果显示,autocommit 的值是 OFF,表示系统关闭模式。
2.ON:开启状态

在这里插入图片描述

结果显示,autocommit 的值是 ON,表示系统开启自动提交模式。

二、修改autocommit 状态的方式

1、第一种方式

在 MySQL 中,可以使用 SET autocommit 语句设置事务的自动提交模式,语法格式如下:

1SET autocommit = 0|1|ON|OFF;

SET autocommit=1和SET autocommit=ON:表示开启autocommit自动提交事务

SET autocommit=0和SET autocommit=OFF::表示关闭autocommit自动提交事务

以上修改autocommit 状态的操作在本次ssh连接会话中有效,新开启的会话中将失效,

2、修改mysql配置文件my.cnf

使mysql中的autocommit 自动提交事务永久关闭,可修改mysql配置文件my.cnf,将autocommit=0或者autocommit=OFF添加:
[mysqld]
autocommit=OFF
或者
[mysqld]
autocommit=0
以上两者添加任意一个即可永久关闭mysql数据库默认的事务提交

然后使用重启命令:service mysqld restart重新启动mysql数据库服务,使用SHOW VARIABLES LIKE 'autocommit';查看autocommit状态即可永久关闭

二、rollback回滚

1、autocommit 开启

autocommit =ON 事务开启

在这里插入图片描述
当mysql数据库默认的自动提交事务打开的状态下,对数据库进行操作后使用rollback回滚无法恢复操作前的数据

1、autocommit 关闭

在这里插入图片描述
autocommit =OFF 提交事务被关闭,

在这里插入图片描述
自动事务被关闭,mysql数据库操作后使用rollback回滚可以进行恢复

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值