zoukankan      html  css  js  c++  java
  • 共享锁和排他锁

    Mysql默认事务隔离是可重复读,即在一个事务中读取到的数据是一致的,不会被其他操作污染。

    1. select 不会受影响,在事务中或者普通执行都可以。
    2. mysql会为update, insert, delete自动加上排他锁。
    3. 事务A共享锁A可以做增删改查,其他事务也可以开共享锁,但是不能开排他锁。所有对锁住的行进行update, deltete 操作受阻。
    4. 事务A排他锁A可以做增删改查,其他事务不能再锁。所有对锁住的行进行update, deltete 操作会出现锁等待
    5. 两个事务使用共享锁,在改动时会第一个出现锁等待,第二个出现死锁并退出事务,同时第一个改动成功,可以commit。

    应用场景:

    共享锁:对一张表的数据行加锁,避免改动和删除,对其关联表进行insert等操作。确保两张表的业务一致。

    排他锁:确保一张表的数据一致性。

  • 相关阅读:
    FFT学习笔记
    FWT(Fast Walsh Transformation)快速沃尔什变换学习笔记
    GMS2游戏开发学习历程
    [BZOJ3238][AHOI2013]差异 [后缀数组+单调栈]
    Trie树简单讲解
    自己的题
    小技巧
    编程注意事项
    构造方法
    递归
  • 原文地址:https://www.cnblogs.com/fenle/p/10656994.html
Copyright © 2011-2022 走看看