zoukankan      html  css  js  c++  java
  • MySql InnoDB 的事务隔离级别

    MySql InnoDB 的事务隔离级别


        未提交读(Read uncommitted)A事务修改了数据,但尚未提交,B事务中的select会读到这些未被提交的数据(脏读)。幻读,不可重复读和脏读均允许。
        已提交读(Read committed) 本事务读取到的是其他事务提交后的的数据。允许幻读和不可重复读,但不允许脏读。
        可重复读(Repeatable read) 可重复读在同一事务中,多次读取同一数据返回的结果相同。即事务A在读到一条数据之后,此时事务B对该数据进行了修改并提交,那么事务A再读该数据,读到的还是原来的内容。允许幻读,但不允许不可重复读和脏读。
        可串行化(Serializable) 以共享锁形式,可以保证不同事务间的互斥。

    脏读: A事务未提交数据,B事务中的select会读到这些未被提交的数据。
    不重复读: 在同一事务中,多次读取同一数据返回的结果不同。不重复读在可重复读的基础上读到的是新的内容。
    幻读: A事务读到B事务已提交的insert数据。幻读是插入和删除,重复读是修改数据。Serializable可以解决幻读(不推荐),或者加临键锁。


  • 相关阅读:
    Python 递归
    Python 面向过程编程
    Python 协程函数
    Python-第三方库requests详解
    Python 三元表达式
    linux copy
    centos 安装软件
    mysql 权限
    mysql 权限 备份
    android 开发
  • 原文地址:https://www.cnblogs.com/zyh-s/p/13253640.html
Copyright © 2011-2022 走看看