概述

是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。
如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。
从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。
主要分为以下三类:

  • 全局锁
  • 表级锁
  • 行级锁

基础知识:

意向锁的作用: 为了降低行级锁与表级锁的冲突概率
场景:如果一个连接加了行锁,另外一个连接需要加表级锁,第二个表级锁加锁过程中会逐个排查有无行级锁,效率较低. 此时, 使用意向锁时, 对行加锁的同时, 会自动加表级意向锁, 这样在锁表的时候效率会很高