Docs/数据库/mysql/锁.md
2022-10-18 16:59:37 +08:00

957 B
Raw Blame History

读锁 也叫共享锁、S锁若事务T对数据对象A加上S锁则事务T可以读A但不能修改A其他事务只能再对A加S锁而不能加X锁直到T释放A上的S 锁。这保证了其他事务可以读A但在T释放A上的S锁之前不能对A做任何修改。

写锁 又称排他锁、X锁。若事务T对数据对象A加上X锁事务T可以读A也可以修改A其他事务不能再对A加任何锁直到T释放A上的锁。这保证了其他事务在T释放A上的锁之前不能再读取和修改A。

表锁 操作对象是数据表。Mysql大多数锁策略都支持是系统开销最低但并发性最低的一个锁策略。事务t对整个表加读锁则其他事务可读不可写若加写锁则其他事务增删改都不行。

行级锁 操作对象是数据表中的一行。是MVCC技术用的比较多的。行级锁对系统开销较大但处理高并发较好。