本文內容
•軟件環境
•簡單演示 Oracle 數據庫并發導致行級鎖
本文簡單演示針對表主鍵并發導致的行級鎖。并發是兩個以上的用戶對同樣的數據進行修改(包括插入、刪除和修改)。鎖的產生是因為并發。沒有并發,就沒有鎖。并發的產生是因為系統需要,系統需要是因為用戶需要。
軟件環境
--------------------------------------------------------------------------------
•Windows 2003 Server
•Oracle 11g Release 1 (11.1)
簡單演示 Oracle 數據庫并發導致行級鎖
首先,打開一個會話 session 1,執行如下操作:
復制代碼 代碼如下:
SQL> select distinct sid from V$mystat;
SID
----------
118
SQL> create table t (x int primary key);
表已創建。
SQL> insert into t values(1);
已創建 1 行。
SQL> update t set x=10 where x=1;
已更新 1 行。
SQL>
復制代碼 代碼如下:
SQL> select distinct sid from V$mystat;
SID
----------
137
SQL> update t set x=10 where x=1;
復制代碼 代碼如下:
SQL> select sid,type,id1,id2,lmode,request,block
2 from v$lock where sid in (118,137)
3 order by sid;
復制代碼 代碼如下:
SQL> select machine from v$session where sid in (118,137);
MACHINE
----------------------------------------------------------------
NUODE/LN
NUODE/LN
SQL>
新聞熱點
疑難解答