zoukankan      html  css  js  c++  java
  • mysql之事务

    image.png

    我们为什么要使用数据库的事务呢?使用事务有什么缺点呢?

    使用原因:保持数据的匹配和一致性。
    缺点: 并发操作中过度使用事务影响性能,因为事务用到了锁技术。

    我是李福春,今天我们来复习一下事务的特性。
    你可以收获下图中的知识点。

    image.png

    下面我们发散一下。

    事务特性

    原子性: 要么全部成功要么全部失败
    一致性: 保证事务的前后一致性 
    隔离性:事物之间的执行不能互相干扰 
    持久性: 事务终结的标志,内存的数据持久化到硬盘中

    并发场景下事务出现的问题

    脏读:

    image.png

    不可重复读

    image.png

    幻读:

    image.png

    依赖id的自增做为依据。

    隔离级别

    读未提交     隔离度最弱           脏读 不可重复度 幻读

    读已提交                             不可重复度 幻读

    可重复读      数据库默认          幻读

    可串行化       性能最低            没有问题

    innodb mvcc   不能解决幻读

    如何跟合理的使用事务

    没有数据一致性要求场景

    不使用事务

    只有查询的场景:

    不需要使用事务

    更新记录表,然后更新统计表

    不要使用事务, 使用事务触发或者定时任务;

    内容繁杂的大事务

    分拆成各种小事务,各种反向操作辅助

    image.png

    原创不易,转载请注明出处。

  • 相关阅读:
    使用fiddler2抓取手机发出的请求信息
    HTML转义字符集合
    spm3安装和使用
    JSP
    Servlet
    Struts2
    java多线程-消费者和生产者模式
    java异常处理机制(try-catch-finally)
    java内部类
    java上转型和下转型(对象的多态性)
  • 原文地址:https://www.cnblogs.com/snidget/p/12556761.html
Copyright © 2011-2022 走看看