杀掉oracle在线用户,在oracle所在服务器上使用root用户执行该脚本
参数说明$1为该oracle用户
#!/bin/sh
function _oracleplus(){
su - oracle -c "$oraclehome/bin/sqlplus /nolog" <<EOF
connect / as sysdba;
$1
exit
EOF
}
echo "start select $1 session!!!"
selectUS="select 'alter system kill session '''||sid||','||serial#||''';' from v$session where username=''$1'';"
_oracleplus "$selectUS" |grep 'alter system' > onlinesession.dmp
echo "start kill $1 session!!!"
cat onlinesession.dmp | while read line;
do
_oracleplus "$line"
done
echo "end kill $1 session!!!"