Oracle中杀不掉的锁(killed)解决办法

   1.下面的语句用来查询哪些对象被锁:

代码如下  

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;

  2.下面的语句用来杀死一个进程:

代码如下  
alter system kill session '24,111';

  (其中24,111分别是上面查询出的sid,serial#)

  【注】以上两步,可以通过Oracle的管理控制台来执行。

  3.如果利用上面的命令杀死一个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os一级再杀死相应的进程(线程),首先执行下面的语句获得进程(线程)号:

代码如下  

select spid, osuser, s.program
from v$session s,v$process p
where s.paddr=p.addr and s.sid=24 (24是上面的sid)

  4.在OS上杀死这个进程(线程):

  1)在unix上,用root身份执行命令:

  #kill -9 12345(即第3步查询出的spid)

  2)在windows(unix也适用)用orakill杀死线程,orakill是oracle提供的一个可执行命令,语法为:

  orakill sid thread

  其中:

  sid:表示要杀死的进程属于的实例名

  thread:是要杀掉的线程号,即第3步查询出的spid。

  例:c:>orakill orcl 12345

时间: 2024-08-30 09:24:18

Oracle中杀不掉的锁(killed)解决办法的相关文章

oracle 误杀进程导致rac hang住解决办法

有客户反馈系统hang住,不能归档,需要我们紧急介入分析 节点1日志 出现redo不能归档,redo日志都已经被写满,人工执行了ALTER SYSTEM ARCHIVE LOG CURRENT,数据库就开始把redo全部归档,但是后面产生的redo又不能归档,当redo全部写满之后,数据库有出现大量log file switch (archiving needed)等待  代码如下 复制代码 Tue Sep 24 22:05:37 2013 Thread 1 advanced to log se

oracle中查询v$session报ORA-04031错误解决办法

客户的数据库在出账期间有工具登录Oracle数据库偶尔性报ORA-04031,经过分析是因为该工具需要查询v$session,经过分析确定是Bug 12808696 – Shared pool memory leak of "hng: All sessi" memory (Doc ID 12808696.8),重现错误如下 节点1进行查询报ORA-4031  代码如下 复制代码 SQL> select count(*) from v$session;   COUNT(*) ---

Winxp中无法安装新字体的终极解决办法

Winxp中无法安装新字体的终极解决办法 在windows 7越来越火的今天,相信还有很多朋友对XP系统情有独钟吧?北极鱼也算是一个了,主要是由于自己都很少使用安装版软件,电脑上基本上都是一些绿色软件.并且自己制作很多绿色软件都是在xp系统下测试绿化的,结果就导致部分绿色软件在windows 7下无法使用,再加上在运行速度已经习惯问题上感觉还是XP来的顺手,所以一直还在延续着XP的使用,(双系统,平时使用在XP下,玩玩就用windows 7), 一直来用的XP好好的,不过早些天,北极鱼也算是终于

getview()-android getView中 position=0多次出现的解决办法

问题描述 android getView中 position=0多次出现的解决办法 适配器中的getview @Override public View getView(int position, View convertView, ViewGroup parent) { View view = View.inflate(context,R.layout.home_item,null); TextView tv = (TextView) view.findViewById(R.id.homeIt

线程-关于Win32核心编程中DLL注入后无反应的解决办法

问题描述 关于Win32核心编程中DLL注入后无反应的解决办法 #include #include HINSTANCE hProcess; PWSTR pszLibFileRemote; HINSTANCE hThread; void StartInject(int ProcessID, char * DllName); void OverInject(char * DllName); void EnableDebugPrivilege(HANDLE processHandle); int ma

Oracle 11g sys,system 密码忘记设置解决办法

原文:Oracle 11g sys,system 密码忘记设置解决办法 1.启动sqlplus 2.请输入用户名:  sqlplus/as sysdba 3.输入口令: 直接回车 4.连接到:    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production    With the Partitioning, OLAP, Data Mining and Real Application Testing option

iOS9与XCode7中不能使用http连接的快速解决办法_IOS

在Xcode7.0及以上版本中编译iOS APP时,默认会使用iOS9的一项新特性,使得所有http连接被禁用,项目里使用的API没有https支持,就悲剧了.差了官方文档,有这么一段话 App Transport Security App Transport Security (ATS) enforces best practices in the secure connections between an app and its back end. ATS prevents accident

有关easyui-layout中的收缩层无法显示标题的解决办法_jquery

easyui-layout中的收缩层无法显示标题的问题原因分析: 在easyui-layout中设置面板初始化为可以折叠,然后就发现标题还有图标都木有了 嗯,就是结果列表上面.一片空白,出现了问题就要去解决它,在网上查了资料之后呢,决定修改jquery.easyui.min.js 版本为:jQuery EasyUI 1.4.1 在5105行有_39d方法,在其中设置两个变量_Cstitle,_CsIcon添加代码如下: var _Cstitle; var _closedTitle = p.pan

Oracle中插入特殊字符:&和'的解决方法汇总_oracle

今天在导入一批数据到Oracle时,碰到了这样一个问题:Toad提示要给一个自定义变量AMP赋值,一开始我很纳闷,数据是一系列的Insert语句,怎么会有自定义变量呢?后来搜索了一下关键字AMP发现,原来是因为在插入数据中有一个字段的内容如下: http://xxx.com/3DX?uid=0676&sid=rt_060908 Oracle把这里的URL的参数连接符&当成是一个自定义变量了,所以要求我给变量AMP赋值.经过测试之后,总结出以下三种方法: 方法一:在要插入的SQL语句前加上S