表级锁和行级锁对比

115 阅读1分钟

表级锁:

  • 优点:

    • 实现简单,资源消耗相对较少。
    • 加锁和释放锁的速度快。
    • 不会出现死锁的情况,因为锁的粒度大,等待时间短。
  • 缺点:

    • 锁的粒度最大,可能导致并发度低,性能瓶颈。
    • 当多个事务并发访问时,可能会出现较多的锁冲突,降低系统的并发性能。
  • 适用场景:

    • 适用于并发访问压力较小,事务冲突较少的场景。
    • 适用于读操作较多,写操作较少的情况。

行级锁:

  • 优点:

    • 加锁粒度小,能够最大程度地减少事务之间的锁冲突,提高系统的并发性能。
    • 适用于高并发的写入操作,减小了锁冲突的概率。
  • 缺点:

    • 加锁和释放锁的速度相对较慢,会消耗较多的系统资源。
    • 可能会导致死锁的发生,因为锁的粒度小,等待时间较长。
  • 适用场景:

    • 适用于并发访问压力较大,事务冲突较多的场景。
    • 适用于读写操作频繁的情况。