数据库-锁

数据库锁包括共享锁、排它锁、更新锁、意向锁、架构锁和大容量更新锁等,用于控制并发操作并防止数据冲突。乐观锁和悲观锁是两种不同的并发控制策略,前者在提交时检查冲突,后者在操作前锁定资源。通过理解并应用这些锁机制,可以有效避免死锁并优化数据库的并发性能。
摘要由CSDN通过智能技术生成

共享锁(shared lock):他读锁,可以并发读取数据,但不能修改。

排它锁(exclusive lock):独占锁、写锁,对数据资源进行增删改时,其他事务不可以操作这个资源,知道排它锁被释放,防止同时对同一资源多重操作。

更新锁(Update lock):防止死锁,两个事务对同一个数据进行先读取再修改的情况,不使用共享锁或排它锁。资源的更新锁只能分配给一个事务,如果要对资源进行修改,就会变成排它锁,否则会变成共享锁。

意向锁:表示SQL Server需要层次结构中中的某些底层资源上获取shared或exclusive,例如,放置在表级的共享意向锁,表示事务打算表的页或者行上放置共享锁。在表级设置意向锁可防止另一个事务随后在包含那页获取排它锁。

意向锁有着更好的性能,因为SQL Server仅在表级检查意向锁,这样可以事务可以安全获取该表的锁,而无需检查表中的行和页上的锁是否可以锁定整个表。

架构锁:在执行依赖于表架构的操作时,架构锁的类型为:架构修改(Sch-M)和架构稳定性(Sch-S),执行表的数据定义语言(DDL)操作使用架构修改锁,当编译查询时,使用架构稳定锁。

大容量更新锁(BU):向表中大容量复制数据并制定了TABLOC

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值