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;

posted @ 2018-08-19 20:55  孤剑者  阅读(1196)  评论(0编辑  收藏  举报