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

    事务的隔离级别

    一、事务特性ACID

    1、原子性:A atomicity

    如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败

    2、一致性:C consistency

    事务在执行前后,数据完整性必须保持一致

    3、隔离性:I isolation

    多个事务,相互独立,互不干扰

    4、持久性:D durability

    事务一旦提交,同步到磁盘,即使数据库出现了也不会产生影响

    二、事务的并发问题

    多个事务之间隔离,相互独立的,但是如果多个事务操作同一批数据,则会引发一些问题,设置不同的隔离级别就可以解决这些问题。

    1、脏读

      事务A读取到事务B更新的数据,然后事务B回滚,事务A读取的这部分就是脏数据。

      事务A读取了事务B为提交的数据,就成为脏读

    2、不可重复度

      事务A中多次读取到同一个数据,在此期间事务B对数据做了修改并提交,事务A多次读取同一个数据,出现了不一致。

      事务A读取到事务B更新后并提交的数据,就成为不可重复读

    3、幻读

      事务A和事务B同时添加一条记录,发现id为10可以用,此时事务A插入id10并保存提交,事务B插入式报错了,难道我刚才的查询产生了幻觉了吗?

    3.6.1 MySQL数据库隔离级别

    级别名字隔离级别脏读不可重复读幻读数据库默认隔离级别
    1 读未提交 read uncommitted  
    2 读已提交 read committed Oracle和SQL Server
    3 可重复读 repeatable read MySQL
    4 串行化 serializable  
  • 相关阅读:
    toj4119HDFS
    hdu2952Counting Sheep
    hdu2393Higher Math
    hdu2317Nasty Hacks
    hdu2309ICPC Score Totalizer Software
    hdu2304Electrical Outlets
    hdu2399GPA
    一、 软件测试概述
    JQuery选择器大全
    如何避免jQuery库和其他库的冲突
  • 原文地址:https://www.cnblogs.com/gushiye/p/13934590.html
Copyright © 2011-2022 走看看