ora-00060 解决办法

2024-10-24 01:51:11

1、为了模拟出死锁的效果需要准备好如下资料,并在数据库中执行--创建测试表testcreate table test(a varchar烫喇霰嘴(10),b int);drop table test;--插入两条数据insert into test (a,b) values('张三',1);insert into test (a,b) values('李四',2);这里小编选择的是PLSQL

ora-00060 解决办法

2、使用xshell远程连接工具,小编为了方便对比特意开了两个分别执行如下更新语句--会话1执行update test set a='bcdf' where b=1;--会话2执行update test set a='1bcdf' where b=2;都很正常,但是不要提交哦,就是不要执行commit操作

ora-00060 解决办法

3、接下来在会话2中执行如下语句update test set a='abcd' where b=1;请看下图,会话2执行此语句后会挂起,因为会话1没有commit的

ora-00060 解决办法

4、接下来在会话1中执行如下语句update test set a='1abcd' where b=2;结果:会话1执行完上述语句之后会挂起。然后切到会话2中,提示报错ora-00060死锁以上实验所显示的结果可以得出如下结论:两个会话同时互相阻塞对方的事务做更新修改操作时,会产生死锁现象。那如何解决呢?请看继续往下看

ora-00060 解决办法
猜你喜欢