mysql事务相关复习

1、首先查看mysql 的autocommit设置,默认是自动提交

show VARIABLES LIKE 'autocommit';

修改方法,修改mysql配置文件,设置如下 0代表关闭自动提交, 1代表开启自动提交

autocommit=0

重启mysql。

MySQL 在自动提交模式下,每个增删改的 SQL 语句都是一个独立的事务。

mysql的autocommit(自动提交)默认是开启,其对mysql的性能有一定影响,举个例子来说,如果你插入了1000条数据,mysql会commit1000次的,如果我们把autocommit关闭掉,通过程序来控制,只要一次commit就可以了。

MySQL的autocommit模式默认是打开状态,为了防止手动的DML操作导致失误,生产环境可以设置为默认关闭的状态。一般的jdbc 连接池默认都是开启状态,而且是可配置的。显式事务下会设置成关闭状态,单纯的修改数据库环境的autocommit不会对代码的行为产生影响。

2、事务的四大特性

事务的四大特性ACID(Atomicity原子性、Consistency一致性、Isolation隔离性、Durability持久性),今天就来讲讲其中的隔离性。当数据库上有多个事务同时执行的时候,就可能出现脏读(dirty read)、不可重复读(non-repeatable read)、幻读(phantom read)的问题,为了解决这些问题&#

猜你喜欢

转载自blog.csdn.net/zsj777/article/details/113725384