zoukankan      html  css  js  c++  java
  • MySQL事务。

    相关资料:https://zhuanlan.zhihu.com/p/70701037        https://zhuanlan.zhihu.com/p/59061106

    一、事务。

      1、概念。事务是由一组SQL语句组成的逻辑处理单元。

      2、事务的属性(ACID)。

        i:原子性(atomicity):事务是最小的工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚。

        ii:一致性(consistency)::一个事务执行前后数据库的完整性保持一致。

        iii:隔离性(isolation):多个并发事务之间要相互隔离。

        iv:持久性(durability):事务提交后,其所做的修改会永久保存到数据库中。

      3、事务的隔离级别。

        i:读未提交(Read Uncommitted):当前事务中的修改,即使没有被提交,对其他事务也是可见的。可能导致:脏读---事务可以读取到未提交的数据。

        ii:读已提交(Read Committed):被读取的数据可以被其他事务修改。可能导致:不可重复读----在一个事务内,多次读同一个数据。在这个事务还没有结束时,另一个事务也访问该同一数据。那么,在第一个事务的两次读

                           数据之间。由于第二个事务的修改,那么第一个事务读到的数据可能不一样,这样就发生了在一个事务内两次读到的数据是不一样的,因此称为不可重复读,即原始读取不可重复。一句话

                        解释:一个事务内,两次相同的查询,返回了不同的数据。

        iii:可重复读(Repeatable Read):保证同一个事务中多次读取同样的记录,结果是一样的。可能导致:幻读----一个事务T1按相同的查询条件重新读取以前检索过的数据,却发现其他事务T2插入了满足其查询条件的新数

                         据,这种现象就称为“幻读”。一句话解释:事务A 读取到了事务B提交的新增数据。     MySql默认。

        iv:串行化(Serializable):所有事务串行执行,避免幻读。

  • 相关阅读:
    常见面试测试要点
    怎样在 CentOS/RHEL 7/6 上安装和配置 Sendmail 服务器
    Cannot uninstall 'pyparsing'. It is a distutils installed project
    Linux下校验SHA1和MD5的方法
    Linux查看进程启动时间和运行多长时间
    sqlplus -S参数表示什么意思?
    dnspython模块报错 AttributeError: 'CNAME' object has no attribute 'address'
    CentOS7中安装pip的方法
    四则运算中遇到的一个问题
    动手动脑
  • 原文地址:https://www.cnblogs.com/zhangyuhao/p/11822740.html
Copyright © 2011-2022 走看看