解决Oracle视图被锁住的问题
2006-07-28 08:27
1546 查看
会产生这种视力被锁定的现象是删除某个对象的时候进程会死掉,创建的时候也是一样。
我同事解释的可能原因是:
在创建对象的时候没有创建完就被关掉了,或者就是没有执行完。然后造成线程锁定。
解决的办法:
1.找出等待事件的原因
select event,p1,p2,sid from v$session_wait where event not like 'SQL%' and event not like 'rdbms%';
2.找出锁住的进程
select object_id,session_id,locked_mode from v$locked_object;
3.找出锁住的进程的操作系统进程
select spid from v$process where addr=(select paddr from v$session where sid=19);(这个19表示被锁定的SID)
4.在操作系统上删除进程
orakill eoffice 2768(第一个参数据是数据库的SID 第二个参数是进程ID,这个数字就是上面取到的进程ID,这个是在Dos命令窗口下操作)
下面是一个操作实例
首先先Drop 相关的锁定的对象如Drop View vw_wf_CritCondition,然后结束PL/SQL Dev 再开一次才能执行下面的操作。
SQL> select event,p1,p2,sid from v$session_wait where event not like 'SQL%' and event not like 'rdbms%';
EVENT P1 P2 SID
---------------------------------------------------------------- ---------- ---------- ----------
null event 1413697536 1 18
null event 1 95552 22
pmon timer 300 0 1
smon timer 300 0 5
library cache lock 763239564 792075180 23 (这里表示有一个库被锁掉了。)
wakeup time manager 0 0 8
6 rows selected
SQL> select object_id,session_id,locked_mode from v$locked_object;
OBJECT_ID SESSION_ID LOCKED_MODE
---------- ---------- -----------
77 22 3
69 22 3
70 22 3
316 22 3
314 22 3
356 22 3
68 22 3
72 22 3
73 22 3
74 22 3
75 22 3
11 rows selected
SQL> select spid from v$process where addr=(select paddr from v$session where sid=22);
SPID
------------
3348
在Dos操作,而且只能在安装数据的本机操作
orakill eoffice 3348
我同事解释的可能原因是:
在创建对象的时候没有创建完就被关掉了,或者就是没有执行完。然后造成线程锁定。
解决的办法:
1.找出等待事件的原因
select event,p1,p2,sid from v$session_wait where event not like 'SQL%' and event not like 'rdbms%';
2.找出锁住的进程
select object_id,session_id,locked_mode from v$locked_object;
3.找出锁住的进程的操作系统进程
select spid from v$process where addr=(select paddr from v$session where sid=19);(这个19表示被锁定的SID)
4.在操作系统上删除进程
orakill eoffice 2768(第一个参数据是数据库的SID 第二个参数是进程ID,这个数字就是上面取到的进程ID,这个是在Dos命令窗口下操作)
下面是一个操作实例
首先先Drop 相关的锁定的对象如Drop View vw_wf_CritCondition,然后结束PL/SQL Dev 再开一次才能执行下面的操作。
SQL> select event,p1,p2,sid from v$session_wait where event not like 'SQL%' and event not like 'rdbms%';
EVENT P1 P2 SID
---------------------------------------------------------------- ---------- ---------- ----------
null event 1413697536 1 18
null event 1 95552 22
pmon timer 300 0 1
smon timer 300 0 5
library cache lock 763239564 792075180 23 (这里表示有一个库被锁掉了。)
wakeup time manager 0 0 8
6 rows selected
SQL> select object_id,session_id,locked_mode from v$locked_object;
OBJECT_ID SESSION_ID LOCKED_MODE
---------- ---------- -----------
77 22 3
69 22 3
70 22 3
316 22 3
314 22 3
356 22 3
68 22 3
72 22 3
73 22 3
74 22 3
75 22 3
11 rows selected
SQL> select spid from v$process where addr=(select paddr from v$session where sid=22);
SPID
------------
3348
在Dos操作,而且只能在安装数据的本机操作
orakill eoffice 3348
相关文章推荐
- 解决oracle 表被锁住问题
- 解决PLSQL记录被另一个用户锁住的问题
- 解决PLSQL记录被另一个用户锁住的问题
- 解决用run-jetty-run锁住css,js文件的问题。
- 解决ORACLE记录被另一个用户锁住的问题
- 解决用run-jetty-run锁住css,js文件的问题
- 查看解决Oracle对象锁住的问题
- 170822、解决PLSQL记录被另一个用户锁住的问题
- 解决用run-jetty-run锁住css,js文件的问题。
- 【问题记录】ORA-28002/ORA-28000 解决11g 密码过期、密码输错锁住用户问题--修改 default profile
- 解决新版本Vivado打开老工程IP锁住的问题
- 如何解决oracle数据库中“记录被另一个用户锁住”的问题
- 解决PLSQL记录被另一个用户锁住的问题
- 解决oracle 表被锁住问题
- win7 ie10输入网址显示无法显示此页问题的解决
- troPipeServer.WaitForConnection()引发的思考。尤其是第二条总结。如果要解决某个问题是一定能解决的,至于怎么解决就要想办法,动脑筋
- 第十周项目3-利用二叉树遍历思想解决问题
- 解决win7中右击管理打不开问题
- 简单完美解决PullToRefreshLayout中PullableListView嵌套ViewPager时滑动冲突的问题
- 开发过程遇到的中文乱码问题如何解决