mysql的事务隔离级别

Posted 孤剑者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql的事务隔离级别相关的知识,希望对你有一定的参考价值。

       Oracle默认的事务隔离级别为读已提交,mysql默认的事务隔离级别为可重复读。MySQL的事务隔离级别有以下四种:

  • 读未提交。事务A可以读到事务B未提交的数据。会引起脏读。

          Mysql设置事务隔离级别为读未提交:

          set session transaction isolation level read uncommitted;

  • 读已提交。事务A只能读到事务B已提交的数据。不可重复读。

          MySQL设置事务隔离级别为读已提交:

         set session transaction isolation level read committed;

  • 可重复读。事务A无法读取事务B已提交的的数据。会产生幻读。

          MySQL设置事务隔离级别为可重复读:

          set session transaction isolation level repeatable read;

  • 串行化。读写操作都是串行的,如果事务A对表T进行了读或者写操作,事务B必须等事务A提交或者回滚后才能操作表T(事务A和事务B只能读同时进行)。

          MySQL设置事务隔离级别为串行化:

          set session transaction isolation level serializable;

以上是关于mysql的事务隔离级别的主要内容,如果未能解决你的问题,请参考以下文章

MySQL的默认事务隔离级别是?

图解MySQL事务隔离级别

MySQL-8事务与隔离级别IO

MySQL事务隔离级别

数据库事务隔离级别 一般用哪个

MySQL 是如何实现四大隔离级别的