unix profile idletime
时间:2011-01-26 来源:dbwriter
参考文章 Script for killing sniped sessions shadow processes [ID 96170.1]
创建 idletime的profile,并修改用户的profile。
例:
alter system set resource_limit = true; create profile idletime limit idle_time 120; alter user scott profile idletime;
当设定了如上的profile时,查询 v$session 视图,过了idletime后的session status 列标示为
'sniped' 的。pmon 不会清除 sniped 的进程,使用'alter system kill session' 杀掉session
但session status 标示为 killed ,最终不会清除超过idletime的session。
需要单独写个脚本利用crontab 来执行此操作
附aix crontab 和脚本
00 * * * * /export/home/oracle/product/10.2.0/db_1/killidle.sh $ cat /export/home/oracle/product/10.2.0/db_1/killidle.sh#!/bin/shexport ORACLE_BASE=/export/home/oracleexport ORACLE_HOME=/export/home/oracle/product/10.2.0/db_1export ORACLE_SID=demoexport PATH=$ORACLE_HOME/bin:$PATHtmpfile=/tmp/tmp.$$sqlplus "noap/uwaysoft2009" << EOFset feed off;set pages 9999 lines 170;spool $tmpfileselect p.spid from v$process p,v$session swhere s.paddr=p.addrand s.status='SNIPED';spool offEOFfor x in `cat $tmpfile | grep "^[0123456789]"`dokill -9 $xdonerm $tmpfile
相关阅读 更多 +