博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
共享锁与排它锁
阅读量:6075 次
发布时间:2019-06-20

本文共 538 字,大约阅读时间需要 1 分钟。

转自:http://sundensky.blog.163.com/blog/static/7728873420101017224968/

 

共享锁【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。

共享锁与排它锁区别

1.共享锁只用于表级,排他锁用于行级。 

2.加了共享锁的对象,可以继续加共享锁,不能再加排他锁。加了排他锁后,不能再加任何锁。 
3.比如一个DML操作,就要对受影响的行加排他锁,这样就不允许再加别的锁,也就是说别的会话不能修改这些行。同时为了避免在做这个DML操作的时候,有别的会话执行DDL,修改表的定义,所以要在表上加共享锁,这样就阻止了DDL的操作。 
4.当执行DDL操作时,就需要在全表上加排他锁

转载于:https://www.cnblogs.com/x_wukong/p/4005350.html

你可能感兴趣的文章
Exchange Server 2010部署(四)安装Exchange 2010邮箱角色服务器
查看>>
jQuery:理解$(document).ready()的特殊写法
查看>>
《网管员必读——网络基础》(第2版)试读样章下载
查看>>
基于C#的波形显示控件的实现
查看>>
Zencart获取PayPal PDT Token参数教程方法
查看>>
Bing Maps进阶系列三:使用地图图像服务(ImageryService)
查看>>
python模拟用户登录某某网
查看>>
VS2010 PrintDialog Win7 64无法显示
查看>>
MYSQL进入客户端后切换服务器的简单做法试验
查看>>
Python 类属性的理解
查看>>
Android在layout xml中使用include[转]
查看>>
Java final 修饰符知识点总结
查看>>
使用CSS 排版网页布局
查看>>
【完全开源】知乎日报UWP版(上篇):界面设计、官方API分析
查看>>
使用Java取得本机IP和机器名
查看>>
Linux下USB转串口的驱动【转】
查看>>
HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等
查看>>
asp.net之treeview无法显示树结点图标(IP与域名的表现竟不一样)
查看>>
微型项目实践(1):用XML描述实体
查看>>
给Linux初学者的七个建议,值得一读
查看>>