Oracle-查找函数session,并结束此函数的session执行,查看错误日志
2023-12-14 21:56:05
select * from V$DB_OBJECT_CASHE WHERE locks >0 and pins >0 and TYPE like 'FUNCTION';--查找执行的函数,如果查存储过程则PROCEDURE,找到对应的name值了。
SELECT * FROM V$ACCESS WHERE OWNER='过程的所属用户' AND NAME='刚才查到的过程名';--有的版本需查表GV$ACCESS,查是得SID
SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID='刚才查到的SID'--查出SID和SERIAL#
SELECT SPID FROM V$PROCESS WHERE ADDR='刚才查到的PADDR';
(1).先杀Oracle数据库进程:
ALTER SYSTEM KILL SESSION '查出的SID,查出的SERIAL#' IMMEDIATE;--如果不加IMMEDIATE,则只是改状态,加上则立即杀死。
(2).再杀操作系统进程:
KILL -9 刚才查出的SPID
在SQLplus客户端执行 show?parameter?dump_dest? ;数据background_dump_dest所在目录。
或者select * from v$diag_info where name ='Diag Trace';可以看到日志位置。
目录下alert_库实例名.log文件就是了。
文章来源:https://blog.csdn.net/u012289341/article/details/134933091
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!