资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

oracle怎么杀会话 oracle杀死会话

怎么用oracle客户端杀掉session

有PL/sql软件么,登陆数据库,用tools——sessions,进入会话界面选中你要杀掉的session选择工具栏那个想像钥匙的按钮就可以杀掉了

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟主机、营销软件、网站建设、镇原网站维护、网站推广。

轻松接触Oracle数据库中的Kill session

问 当一个session被kill掉以后 该session的paddr被修改 如果有多个session被kill 那么多个session的paddr都会被更改为相同的进程地址 在这种情况下 资源是无法释放的 我选择了查询spid 在操作系统级来kill这些进程 但是由于此时v$session paddr已经改变 我已经无法通过v$session和v$process关联来获得spid 那还可以怎么办呢?

答 具体示例如下

SQL select p addr from v$process p where pid    minus   select s paddr from v$session s; ADDR B E B

现在我们获得了进程地址 就可以在v$process中找到spid 然后可以使用Kill或者orakill在系统级来杀掉这些进程

当在Oracle中kill session以后 Oracle只是简单的把相关session的paddr 指向同一个虚拟地址

lishixinzhi/Article/program/SQL/201404/30531

如何快速的杀掉Oracle的Session

举个例子

通过session id (SID) 找到系统进程号 然后kill 进程

SQL select spid from v$process where addr=(select paddr from v$session where rownum=1 and sid=(select userenv('SID') from dual));

SPID

------------------------

12135

spid 系统进程号

SQL ho kill -9 12135

kill 掉这个进程 就完了

SQL select sysdate from dual;

select sysdate from dual

*

第 1 行出现错误:

ORA-03135: 连接失去联系

进程 ID: 12135

会话 ID: 65 序列号: 19533

如何迅速杀掉数据库里inactive的会话

在Oracle数据库中,经常会产生一些inactive的会话,但是仍然连接到数据库,一般情况下,我们可以使用alter system kill session 'sid,serial#'; 来强制杀掉他,但是如果我们有大量的这种进程,要手动一个一个去杀掉,是比较麻烦的。

下面有个方法,可以迅速的杀掉这些进程。

SELECT 'ALTER SYSTEM DISCONNECT SESSION ''' || B.SID || ',' || B.SERIAL# ||

'''IMMEDIATE;'

FROM V$LOCKED_OBJECT A, V$SESSION B, DBA_OBJECTS C

WHERE B.SID = A.SESSION_ID

如何杀掉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;


文章标题:oracle怎么杀会话 oracle杀死会话
本文URL:http://cdkjz.cn/article/hgsigj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220