成都创新互联网站制作重庆分公司

oracle如何杀死会话,oracle杀进程提示会话不存在

如何杀掉Oracle中的会话

sqlplus环境下 alter system kill session 'sid,serial#';

成都创新互联专注于瑞昌企业网站建设,响应式网站设计,商城系统网站开发。瑞昌网站建设公司,为瑞昌等地区提供建站服务。全流程定制网站制作,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务

如果不行的话在操作系统下操作:

windows: orakill 实例名 spid

linux: kill -9 spid

如何杀掉Oracle的Session

需要查询SID和SERIAL#,然后kill掉。

方法1、用sql语句

SHELL sqlplus /nolog

SQL conn /as sysdba

SQL set head off

SQL spool kill.txt

SQL select ‘alter system kill session ‘ || ”” || a.SID || ‘,’ || a.SERIAL# || ””||’ ;’ from v$session a where a.STATUS = ‘ACTIVE' and osuser='alex';

SQL spool off

SQL exit

SHELLsed -i ‘/^$/d’ ~/kill.txt

SHELLsqlplus /nolog

SQL conn /as sysdba

SQL @kill.txt

SQL exit

方法2、用proc

declare cursor mycur is

select b.sid,b.serial#

from v$locked_object a,v$session b

where a.session_id = b.sid group by b.sid,b.serial#; 

begin

for cur in mycur

loop

execute immediate ( ‘alter system kill session ”’||cur.sid || ‘,’|| cur.SERIAL# ||”’ ‘);

end loop;

end;

如何杀掉(kill)Oracle中的会话(Session)

��匠�焙蟛呕岜唤饪��茄�蓟嵩斐捎τ貌僮鞅蛔枞�?梢砸設ralce管理员权限用户登录Oracle数据,查询到被锁的对象,然后杀除指定的会话。用下面的语句查询被锁的对象,可以带上更多约束条件,如schemaname等更精确的匹配。

alter system kill session 'sid, serial#' 如上面查出来的一条记录的sid是53, serial#为663,就执行以下的语句alter system kill session '53,663' 如果要一次性杀死多个会话,一个一个填写sid和serial#十分的繁琐,应该在查询被锁对象的同时拼凑出多条的杀会话语句,以分号分隔,一起复制下来,然后就可以批量的执行了。 1.SELECT'alter system kill session '''|| c.sid ||''||','|| c.serial# ||''';',2. a.object_id, a.session_id, b.object_name, c.*3. FROMv$locked_object a, dba_objects b, v$session c4. WHEREa.object_id = b.object_id5. ANDa.SESSION_ID = c.sid(+)6. ANDschemaname ='Unmi'7. ORDERBYlogon_time


名称栏目:oracle如何杀死会话,oracle杀进程提示会话不存在
网站路径:http://cxhlcq.com/article/hcdgjo.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部