所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

oracle共享锁和独占锁的区别?

发布时间:2020-04-12 08:51:38

资讯分类:独占锁  共享锁  oracle  区别  排他  事务  数据
oracle共享锁和独占锁的区别?

1.共享锁(S锁):如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。

排他锁(X锁):如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁。获准排他锁的事务既能读数据,又能修改数据。

2.共享锁下其它用户可以并发读取,查询数据。但不能修改,增加,删除数据。资源共享.

oracle共享锁和独占锁的区别?

相对于oracle 和sqlserver mysql的锁相对较为简单也比较少,理解起来不是很难。

  • 共享锁(S):允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。
  • 排他锁(X):允许获得排他锁的事务更新数据,阻止其他事务取得相同数据集的共享读锁和排他写锁。另外,为了允许行锁和表锁共存,实现多粒度锁机制,InnoDB还有两种内部使用的意向锁(Intention Locks),这两种意向锁都是表锁。
  • 意向共享锁(IS):事务打算给数据行加行共享锁,事务在给一个数据行加共享锁前必须先取得该表的IS锁。
  • 意向排他锁(IX):事务打算给数据行加行排他锁,事务在给一个数据行加排他锁前必须先取得该表的IX锁。

如果不求甚解的话,了解这个图就行了:

留言与评论(共有 0 条评论)
   
验证码:
Top