- 论坛徽章:
- 0
|
我有好几个应用程序操作oracle数据库,一直都没有问题,
最近几天没一天都有2、3次在插入数据时候报ORA-01013,这个时候可以看到这几个应用程序操作都卡在那里,
再查表的死锁状况,有1到2个表的locked_mode为3,但我的应用是不会互锁的,因为各个应用操作的表是不一样的,可以监控到当时的情况
sid locked_mode object_name
12 3 T1
15 3 T2
在监控当时的sql操作语句
select sid,user_name,sql_text from v$open_cursor where sid in (select sid from (select sid,serial#,username,program from v$session where status='ACTIVE'));
sid user_name sql_text
12 user1 insert T1 ...
12 user1 insert T1 ...
15 user1 insert T2 ...
15 user1 insert T2 ...
15 user1 insert T2 ....
15 user1 insert T2 ....
我一个程序里插入语句是一个事务操作 begin_ran(); insert T1... ; commit() ;
为什么监控到操作有多条呢?
过几分钟后,这里的插入大多数成功了,其中的一、二条不成功,程序会报ORA-01013错误。
我的数据库是oracle8,已经用了2、3年了,整个数据库的数据量也是有点大的,但操作的表是新建的表。
有没有哪位高手帮忙解决下。 |
|