您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Oracle杀掉系统进程的描述

2024/3/18 3:58:27发布38次查看
oracle杀掉系统进程的描述 2012-01-18 00:00 中国it实验室 佚名 在导入附件表affix的时候,数据量很小就1w多条数据,但是affix中有一个blob的大字段,这就使得查询起来很慢,因为工作的环境网络特别的不稳定,开始导入了大概快一半了,突然网络断了,当时真
oracle杀掉系统进程的描述
2012-01-18 00:00中国it实验室佚名
在导入附件表affix的时候,数据量很小就1w多条数据,但是affix中有一个blob的大字段,这就使得查询起来很慢,因为工作的环境网络特别的不稳定,开始导入了大概快一半了,突然网络断了,当时真的很生气,但是也没有什么办法,网络好后接着导入此时总是出现导入错误、甚至导入了很长时间,数据条数根本没发生变化,就是这样的反反复复,查看了一下oracle锁表的情况:
select object_name, machine, s.sid, s.serial#
from v$locked_object l, dba_objects o, v$session s
where l.object_id  =   o.object_id
and l.session_id = s.sid;
结果就看到如下结果:
果然有表锁死了,心想kill掉锁死的表很简单,命令如下:
alter system kill session '519,10230';
执行的时间很长,后来居然出现了下图的错误:
一看就是报错了,查了一些资料是因为oracle锁死的表被杀死后,状态被标识为“killed”但是锁定资源很长时间才能得到释放,有的时候实在没有别的好的办法我们就需要重启数据库了,我的理解是如果等半天或者更长时间的话是可以被释放的。于是就开始查询资料、例子,解决办法如下:
select sid,serial#,paddr from v$session where sid='519' --被锁定的sid
此时可以得到 paddr ,在通过sql得到:
select spid from v$process where addr='695e3f2c'; --paddr的值
这个时候就可以直接在系统中把oracle进程杀掉了,可以使用 kill -9 spid 或者 orakill sid spid
此时整个操作完成,如果遇到此类问题不能解决大家在一起讨论。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product