zoukankan      html  css  js  c++  java
  • 数据库事务的4大隔离级别

    数据库事务的4大隔离级别

    数据库事务的4大隔离级别按照从低到高排序为:未提交读、已提交读、可重复读、串行化。

    事务隔离级别以及各级别下的并发访问问题:

     


    pic-1596534022836.png

     

    并不是说事务隔离级别越高越高,虽然事务隔离级别越高越安全,但是这样限制了数据库的并发度。

    Oracle数据库的默认事务隔离级别是第二等的已提交读(read commit);而Mysql数据库的默认事务隔离级别是第三等的可重复读(repeatable read)。单从事务隔离级别来看Oracle数据库的并发度比Mysql好,但是Mysql比Oracle更安全。
    

    上述所讲的四个并发访问问题:更新丢失、脏读、不可重复读、幻读的概念如下。

    (1)更新丢失:逻辑上已经完成更新的数据,但是由于某些原因实际上并没有完成更新。

     


    pic-1596534022837.png

     

    (2)脏读:一个事务读取到另一个事务未提交的数据。(未提交的数据也就是脏数据)

     


    pic-1596534022838.png

     

    (3)不可重复读:一个事务读取到另一个事务已提交的更新数据。(与幻读不同的是:这里的事务是对已有的数据更新)

     


    pic-1596534022839.png

     

    (4)幻读(虚读):一个事务读取到另一个事务所做的新增或删除数据。

     


    pic-1596534022840.png

     

    不可重复读和幻读的区别:
        不可重复读是一个事务重复读到另一个事务对已有数据的更新操作结果。
        幻读是一个事务重复读到另一个事务的新增、删除操作结果。
  • 相关阅读:
    模拟赛20181101 雅礼 Wearry 施工 蔬菜 联盟
    模拟赛20181031 雅礼 Wearry 养花 折射 画作
    set/priority_queue的运算符重载
    set的完整用法
    最长公共上升子序列 O(n^2)
    无向图边双联通分量 tarjan 模板
    ID 迭代加深搜索 模板 埃及分数
    树上背包DP Luogu P2014 选课
    A* 第k短路
    [POJ3468]关于整数的简单题 (你想要的)树状数组区间修改区间查询
  • 原文地址:https://www.cnblogs.com/xm970829/p/13434714.html
Copyright © 2011-2022 走看看