1. 首页 > ITPUX技术网 > 正文

oracle中lock与latch的区别

1,都是锁
2,lock用于database data,针对磁盘
3,latch锁比lock锁级别低
4,latch用于管理系统资源,针对内存,shared pool latch.
5, library cache pin和library cache lock都是用于share pool的并发控制的。pin和lock都可以看作是一种锁。locks/pins会在SQL语句执行期间一直保持,在结束的时候才释放。
6,大体上可以这样理解,现在要在一个房间里面修一张桌子。
shared pool latch保护你正常找到一个可以修桌子的空房间,
library cache lock保护你可以正常把桌子搬进房间,
library cache pin保护你可以正常在房间里把桌子修完。
7,latch:It’s called 锁存器, a register array for temporary keep the working status.oracle中文培训教材上翻译为栓锁,就是oracle的系统锁,进程只有获得latch才可以向db buffer cache里写入数据.闩,以区别与锁。闩是比锁低一级,或者说是用于系统内部的小型锁。latch是用于保证内存结构(如LRU List和Redo Allocation)在非常短的时间处在一致性的状态,一般不需要DBA的维护!
8,lock是用于保证数据的一致性与更高的并发度的,包括TM表类型的lock和TX纪录类型的lock。

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息