本文内容
•软件环境
•简单演示 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>
新闻热点
疑难解答