数据库的等待事件TX-row lock contention怎么解决

网友投稿 172 2023-12-05

数据库的等待事件TX-row lock contention怎么解决

本篇内容主要讲解“数据库的等待事件TX-row lock contention怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库的等待事件TX-row lock contention怎么解决”吧!

数据库的等待事件TX-row lock contention怎么解决

--创建外键参考表t3SQL>  create table t3 (id number primary key,name varchar2(20),product_id number);Table created.--创建主表t2SQL>  create table t2 (id number primary key,name varchar2(20));Table created.--给t3表加入外键约束SQL> alter table t3 add constraint FK_PRODUCTSTAT_PRODUCTID foreign key (PRODUCT_id) references t2 (ID);Table altered.SQL> SQL> insert into t2 values(1,dh);1 row created.SQL>  insert into t2 values(2,cc);1 row created.SQL> insert into t2 values(3,cc);1 row created.SQL>  commit;Commit complete.SQL> select * from t2;        ID NAME---------- --------------------         1 dh         2 cc         3 ccSQL> select * from t3;no rows selected--注意区分:session1:SQL> insert into t2 values(4,cc);1 row created.未提交。。。session 2:SQL> insert into t3 values(1,tt,4); 1 row created.hang住,一直不动。。。session 3:查询:SET LINES 200col OWNER for a10col R_OWNER for a10col R_CONSTRAINT_NAME for a15select a.table_name,       a.owner,       a.constraint_name,       a.constraint_type,       a.r_owner,       a.r_constraint_name,b.table_name  from dba_constraints a, dba_constraints b where a.constraint_type = Rand a.r_constraint_name = b.constraint_name   and a.r_owner = b.owner   and b.table_name = T2   and b.owner=SYS;TABLE_NAME                     OWNER      CONSTRAINT_NAME                C R_OWNER    R_CONSTRAINT_NA TABLE_NAME------------------------------ ---------- ------------------------------ - ---------- --------------- ------------------------------T3                             SYS        FK_PRODUCTSTAT_PRODUCTID       R SYS        SYS_C0012328    T2SQL>  select sid,serial#,sql_id,program,username,event,blocking_session from v$session where blocking_session is not null;SID    SERIAL# SQL_ID        PROGRAM                                          USERNAME                       EVENT                                                  BLOCKING_SESSION---------- ---------- ------------- ------------------------------------------------ ------------------------------ ---------------------------------------------------------------- ----------------53        427 1cgjmu64ztjch sqlplus@wang (TNS V1-V3)                         SYS                            enq: TX - row lock contention                        57SQL> select sql_text from v$sql where sql_id=1cgjmu64ztjch;SQL_TEXT-------------------------------------------------------------insert into t3 values(1,tt,4)SQL> SQL> select sid,serial#,sql_id,program,username,event,blocking_session from v$session where sid=57;SID    SERIAL# SQL_ID              PROGRAM                                             USERNAME          EVENT                        BLOCKING_SESSION---------- ---------- ------------- ------------------------------------------------ ------------------------------57        575               sqlplus@wang (TNS V1-V3)                         SYS         SQL*Net message from clientSQL>     现在将session1提交:SQL> commit;Commit complete.SQL>  --session2插入也完成:SQL> insert into t3 values(1,tt,4);1 row created.SQL>SQL> commit;Commit complete.

到此,相信大家对“数据库的等待事件TX-row lock contention怎么解决”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:logminer怎么使用
下一篇:Oracle Database补丁使用方法有哪些
相关文章

 发表评论

暂时没有评论,来抢沙发吧~