Shell实现的Oracle启动脚本分享
Usage:shoracled[start|stop|restart]SIDs其中SIDs是数据库名,多个名称之间用逗号分隔。缺省的操作是restart,也可以指定需要进行的操作(start|stop|restart)
#!/bin/sh
cmdname="restart"
#getoraclesidinformationfromenvbydefault.
oracleSID=${ORACLE_SID}
env_oracleSID=${ORACLE_SID}
functionechohelp(){
echo"******oracledToolHelper******"
echo"Usage:shoracled[start|stop|restart]SIDs"
echo"SIDs:seperatedbycomma"
exit5
}
functionstartoracle(){
echo"begintostartoracle..."
lsnrctlstart
forcurSIDin`echo${oracleSID}|awk'BEGIN{RS=","}{ORS="\n"}{print$1}'`;do
if["x${curSID}"="x"];then
continue;
fi
exportORACLE_SID=${curSID}
sqlplus/nolog<<EOF
connect/assysdba
startup
exit
exit
EOF
echo"oracleDB[${curSID}]startedOK."
done
}
functionstoporacle(){
echo"begintostoporacle..."
forcurSIDin`echo${oracleSID}|awk'BEGIN{RS=","}{ORS="\n"}{print$1}'`;do
if["x${curSID}"="x"];then
continue;
fi
exportORACLE_SID=${curSID}
sqlplus/nolog<<EOF
connect/assysdba
shutdownimmediate
exit
exit
EOF
echo"oracleDB[${curSID}]stoppedOK."
done
lsnrctlstop
}
functionrestartoracle(){
stoporacle
startoracle
}
if[$#-lt1];then
echohelp
fi
until[$#-eq0]
do
tmpVOrg=$1
tmpV=`echo"${tmpVOrg}"|awk'{printf"%s",$1}'|tr'[A-Z]''[a-z]'`
if[$tmpV="start"-o$tmpV="restart"-o$tmpV="stop"];then
cmdname=${tmpV}
elif[$tmpV="--help"-o$tmpV="-h"];then
echohelp
else
oracleSID=$tmpVOrg
fi
shift
done
if["x${cmdname}"="x"];then
echohelp
fi
${cmdname}oracle
exportORACLE_SID=${env_oracleSID}
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短