• ACID


    数据库事务四大特性。ACID。

    首先啥是事务,单位逻辑工作单元执行的一系列操作,要么完全执行,要么不执行

    1、Atomicity,原子性

    事务包含的操作要么成功,要么失效回滚,如果成功,则应用安全应用于数据库,失效则不能对数据库有任何影响。

    2、Consistency,一致性

    事务必须使数据库从一个一致状态换到另一个一致状态,也就是说一个事务执行之前和执行之后都必须处于一致状态。

    3、隔离型,Isolation

    当多个用户并发访问数据库时,数据库为每个用户开启的事务,不被其它事务干扰,即并发访问事务相互隔离。

    4、持久性,Durability

    一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的。即使在数据库遇到故障的情况下也不会丢失提交的操作。

    如果不考虑事务的隔离型,那么会发生几种问题。

    1. 脏读,在一个事务里读取了另一个未提交的事务中的数据。
    2. 不可重复度,一个事务范围内多次查询却返回了不同的数据值,这是由于在查询间隔,被另一个事务修改并提交了。
    3. 幻读。是事务非独立执行时发生的现象。例如事务T1对一个表中所有的行的某个数据项做了从1修改为2的操作,这时事务T2对这个表中插入了一行数据项,1。这时查看数据发现有一行没有修改,其实这是T2插进来的。

    幻读和不可重复度都是读取了另一条已提交的事务,不同的是不可重复读查到的是同一数据,幻读查看了批数据。

    MySql四种隔离级别

    1、Serializable(串行化),都能避免

    2、可重复读,可避免脏读,不可重复读

    3、读已提交,可避免脏读的发生

    4、读未提交,最低级别。

    谢谢!
  • 相关阅读:
    js概念理解
    web性能瓶颈
    http协议
    jquery插件开发
    Razor(cshtml)
    从局域网内的其他Linux主机下载文件
    Java多线程学习笔记
    java中String s="abc"及String s=new String("abc")详解
    Object中toString方法
    DAO层,Service层,Controller层、View层、entity层
  • 原文地址:https://www.cnblogs.com/ylxn/p/10354142.html
Copyright © 2020-2023  润新知