oracle启动shell脚本一例
时间:2015-02-22 15:09 来源:linux.it.net.cn 作者:IT
一个oracle启动的shell脚本,缺少为restart重启方式,也可以指定start与stop等方式,oracle启动脚本一例。
shell脚本实现oracle数据库启动
Usage: sh oracled [start|stop|restart] SIDs 其中SIDs是数据库名,多个名称之间用逗号分隔。
缺省操作为 restart ,也可以指定需要进行的操作( start | stop | restart )
shell脚本代码:
#!/bin/sh
cmdname="restart"
# get oracle sid information from env by default.
oracleSID=${ORACLE_SID}
env_oracleSID=${ORACLE_SID}
function echohelp(){
echo "******oracled Tool Helper******"
echo "Usage:sh oracled [start|stop|restart] SIDs"
echo "SIDs : seperated by comma"
exit 5
}
function startoracle(){
echo "begin to start oracle ..."
lsnrctl start
for curSID in `echo ${oracleSID} | awk 'BEGIN {RS=","}{ORS="\n"}{print $1}'` ; do
if [ "x${curSID}" = "x" ] ; then
continue;
fi
export ORACLE_SID=${curSID}
sqlplus /nolog <<EOF
connect /as sysdba
startup
exit
exit
EOF
echo "oracle DB [${curSID}] started OK."
done
}
function stoporacle(){
echo "begin to stop oracle ..."
for curSID in `echo ${oracleSID} | awk 'BEGIN {RS=","}{ORS="\n"}{print $1}'` ; do
if [ "x${curSID}" = "x" ] ; then
continue;
fi
export ORACLE_SID=${curSID}
sqlplus /nolog <<EOF
connect /as sysdba
shutdown immediate
exit
exit
EOF
echo "oracle DB [${curSID}] stopped OK."
done
lsnrctl stop
}
function restartoracle(){
stoporacle
startoracle
}
if [ $# -lt 1 ] ; then
echohelp
fi
until [ $# -eq 0 ]
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
export ORACLE_SID=${env_oracleSID}
(责任编辑:IT)
一个oracle启动的shell脚本,缺少为restart重启方式,也可以指定start与stop等方式,oracle启动脚本一例。 shell脚本实现oracle数据库启动
Usage: sh oracled [start|stop|restart] SIDs 其中SIDs是数据库名,多个名称之间用逗号分隔。
shell脚本代码:
#!/bin/sh
cmdname="restart" # get oracle sid information from env by default. oracleSID=${ORACLE_SID} env_oracleSID=${ORACLE_SID} function echohelp(){ echo "******oracled Tool Helper******" echo "Usage:sh oracled [start|stop|restart] SIDs" echo "SIDs : seperated by comma" exit 5 } function startoracle(){ echo "begin to start oracle ..." lsnrctl start for curSID in `echo ${oracleSID} | awk 'BEGIN {RS=","}{ORS="\n"}{print $1}'` ; do if [ "x${curSID}" = "x" ] ; then continue; fi export ORACLE_SID=${curSID} sqlplus /nolog <<EOF connect /as sysdba startup exit exit EOF echo "oracle DB [${curSID}] started OK." done } function stoporacle(){ echo "begin to stop oracle ..." for curSID in `echo ${oracleSID} | awk 'BEGIN {RS=","}{ORS="\n"}{print $1}'` ; do if [ "x${curSID}" = "x" ] ; then continue; fi export ORACLE_SID=${curSID} sqlplus /nolog <<EOF connect /as sysdba shutdown immediate exit exit EOF echo "oracle DB [${curSID}] stopped OK." done lsnrctl stop } function restartoracle(){ stoporacle startoracle } if [ $# -lt 1 ] ; then echohelp fi until [ $# -eq 0 ] 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 export ORACLE_SID=${env_oracleSID} (责任编辑:IT) |