用pl/sql编译 编译 oracle存储过程的时候,窗口提示未响应,强制关闭后再重登陆也是如此。
经涂霖英指点后进一步百度,发现是session被锁住的问题,现解决步骤记录下来:
1.登陆sys用户,在pl/sql选择 tools->sessions,会列出各个session的具体信息
2. 执行sql语句:select *from v$session t where t.ACTION like'%Test%';找到当前进行存储过程调试的session,然后执行kill命令:
alter system kill session '8,6421';
其中8,6424分别是sid与serial#。
3.然而对已经marked as killed的无效,那么需要这样做:
查出session的spid,语句为:
select
spid, osuser, s.program
from
v$session s, v$process p
where
s.paddr = p.addr
and
s.sid =197;
4.假如你没有权限执行上述任意语句,可以这样:
grant DBA to scott;--(当然,也可以登陆sys)
5.然后就是:
在windows上,C:\Documents and Settings\gg>orakill orcl 12345
12345是第三步的spid,orcl是存储过程卡住的那个数据库名称。
6.参考资料:
步骤2参考:http://blog.youkuaiyun.com/mchdba/article/details/51999508
步骤3参考:http://www.2cto.com/database/201309/246227.html
步骤4参考:https://zhidao.baidu.com/question/468608646.html
步骤5参考:http://www.2cto.com/database/201309/246227.html
https://zhidao.baidu.com/question/160233408.html
感谢各位的帮助!