Chinaunix首页 | 论坛 | 博客
  • 博客访问: 837993
  • 博文数量: 199
  • 博客积分: 6363
  • 博客等级: 准将
  • 技术积分: 2225
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-28 10:01
个人简介

来自农村的老实娃

文章分类

全部博文(199)

文章存档

2017年(1)

2014年(2)

2013年(3)

2012年(6)

2011年(26)

2010年(34)

2009年(50)

2008年(44)

2007年(33)

我的朋友

分类: Oracle

2008-08-29 16:04:15

在实际应用中会kill一个或几个用户的session
set termout off
set ver off
set linesize 4000
set pagesize 0
whenever sqlerror exit
set serveroutput on
set feedback off
set heading off
set pagesize 0
set pause off
set trimspool on
set verify off
动态生成需要kill的进程并形成文件killsess.sql
spool /home/oracle/killsess.sql;
select 'kill -9 '||a.spid||';' from v$process a,v$session b where a.ADDR=b.PADDR and b.schemaname in ('MARKET_NEW','PNP22','NEWSLETTER','INFOCASE','GOLDPEN','PASSPORT');
spool off
exit
EOF
从killsess.sql里取出有效部分(只含kill -9 XXXX)语句
tail -100 killsess.sql |grep '^kill -9' > afterkillsess.sh
chmod 750 afterkillsess.sh
/home/oracle/afterkillsess.sh
因oracle等下一个Pmon,所以最好sleep一下,再继续后面的程序
 
sleep 300
 
 
---完---
阅读(2661) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~