标题 | Shell实现的Oracle启动脚本分享 |
内容 | Usage: sh oracled [start|stop|restart] SIDs 其中SIDs是数据库名,多个名称之间用逗号分隔。缺省的操作是 restart ,也可以指定需要进行的操作( start | stop | restart ) 代码如下: #!/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} |
随便看 |
|
在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。