ORACLE表和行的鎖

jinqibingl發表於2010-08-20

ORACLE表和行的鎖

ORACLE對於實際物件的鎖定,共分5種,分別是

row share

row exclusive 

share

share row exclusive

exclusive  ,鎖的表現在檢視v$lock中有資料行顯示,其中LMODE分別為0-6,7個級別,對應情況如下:

0 none
1 null
2 row share                行級共享鎖,其他物件只能查詢這些資料行
3 row exclusive            行級排它鎖,在提交前不允許做DML操作
4 share                    共享鎖
5 share row exclusive      共享行級排它鎖
6 exclusive                排它鎖

其中2-6,5個級別分別對應5種鎖的模式。

資料庫中鎖,分為TX表級鎖和TM行級鎖。一個會話需要鎖定的話,會出現兩個鎖,分別是TX和TM鎖。

據我自己的理解,2-6級別鎖,不管是哪種鎖,都會鎖定行,導致其他會話無法修改該行資料。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9606200/viewspace-671501/,如需轉載,請註明出處,否則將追究法律責任。

相關文章