批次起停資料庫指令碼
unix 伺服器上可能有10多個資料庫,可以用指令碼批次啟動,停止
: start_all_dbs.sh, shutdown_all_dbs.sh.[@more@]*****************************************************************************************
start_all_dbs.sh
*****************************************************************************************
#!/bin/ksh
ORATAB=/var/opt/oracle/oratab; export ORATAB
TEMP_DIR=/tmp ; export TEMP_DIR
function is_db_up
{
rm $TEMP_DIR/delme.log
sqlplus "/ as sysdba"<< EOF > $TEMP_DIR/delme.log
exit
EOF
export DB_UP=F
grep "ORA-01034" $TEMP_DIR/delme.log >> /dev/null
if [ $? -eq 0 ] ; then
DB_UP=F
fi
rm $TEMP_DIR/delme.log
}
function startupdb_sqlplus
{
echo calling sqlplus
# get path/names of all database files for this database
sqlplus "/ as sysdba" <startup
EXIT
EOF
}
SID_LIST=`awk -F: '/^[^#]/ {printf " %s ",$1} END {printf "n"}' $ORATAB`
for SID in `echo $SID_LIST`
do
export ORACLE_SID=$SID
is_db_up
if [ "$DB_UP" = "T" ]; then
echo "***************** $ORACLE_SID is up already - no need to startup"
else
echo "**************** Starting $SID $ORACLE_HOME "
startupdb_sqlplus
fi
#check_alert_log
done
*****************************************************************************************
shutdown_all_dbs.sh
*****************************************************************************************
#!/bin/ksh
ORATAB=/var/opt/oracle/oratab; export ORATAB
TEMP_DIR=/tmp ; export TEMP_DIR
function shutdowndb_sqlplus
{
echo calling sqlplus
# get path/names of all database files for this database
sqlplus "/ as sysdba" <shutdown immediate
EXIT
EOF
}
SID_LIST=`awk -F: '/^[^#]/ {printf " %s ",$1} END {printf "n"}' $ORATAB`
for SID in `echo $SID_LIST`
do
export ORACLE_SID=$SID
shutdowndb_sqlplus
done
start_all_dbs.sh
*****************************************************************************************
#!/bin/ksh
ORATAB=/var/opt/oracle/oratab; export ORATAB
TEMP_DIR=/tmp ; export TEMP_DIR
function is_db_up
{
rm $TEMP_DIR/delme.log
sqlplus "/ as sysdba"<< EOF > $TEMP_DIR/delme.log
exit
EOF
export DB_UP=F
grep "ORA-01034" $TEMP_DIR/delme.log >> /dev/null
if [ $? -eq 0 ] ; then
DB_UP=F
fi
rm $TEMP_DIR/delme.log
}
function startupdb_sqlplus
{
echo calling sqlplus
# get path/names of all database files for this database
sqlplus "/ as sysdba" <
EXIT
EOF
}
SID_LIST=`awk -F: '/^[^#]/ {printf " %s ",$1} END {printf "n"}' $ORATAB`
for SID in `echo $SID_LIST`
do
export ORACLE_SID=$SID
is_db_up
if [ "$DB_UP" = "T" ]; then
echo "***************** $ORACLE_SID is up already - no need to startup"
else
echo "**************** Starting $SID $ORACLE_HOME "
startupdb_sqlplus
fi
#check_alert_log
done
*****************************************************************************************
shutdown_all_dbs.sh
*****************************************************************************************
#!/bin/ksh
ORATAB=/var/opt/oracle/oratab; export ORATAB
TEMP_DIR=/tmp ; export TEMP_DIR
function shutdowndb_sqlplus
{
echo calling sqlplus
# get path/names of all database files for this database
sqlplus "/ as sysdba" <
EXIT
EOF
}
SID_LIST=`awk -F: '/^[^#]/ {printf " %s ",$1} END {printf "n"}' $ORATAB`
for SID in `echo $SID_LIST`
do
export ORACLE_SID=$SID
shutdowndb_sqlplus
done
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14377/viewspace-1060456/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python指令碼批次建立資料表Python指令碼
- JS指令碼批次處理TS資料型別JS指令碼資料型別
- 資料庫備份指令碼資料庫指令碼
- 資料庫-批次更新資料庫
- 呼叫中心資料入庫指令碼指令碼
- MySQL匯出資料庫指令碼MySql資料庫指令碼
- mssql生成資料庫字典指令碼-MarkDownSQL資料庫指令碼
- Flyway版本化管理資料庫指令碼資料庫指令碼
- 批次解壓shell指令碼指令碼
- 【SCRIPT】Oracle資料庫基本資訊收集指令碼Oracle資料庫指令碼
- MySQL資料庫備份的shell指令碼MySql資料庫指令碼
- oracle資料庫使用rman備份指令碼Oracle資料庫指令碼
- 大資料叢集服務啟停指令碼/常用埠/時間同步大資料指令碼
- Tomcat的啟停指令碼原始碼解析Tomcat指令碼原始碼
- oracle 資料庫徹底清除目錄指令碼Oracle資料庫指令碼
- Bash 指令碼安裝 MySQL-8.0.20 資料庫指令碼MySql資料庫
- 通過shell指令碼批量操作mysql資料庫指令碼MySql資料庫
- Liunx備份mysql資料庫的shell指令碼MySql資料庫指令碼
- Linu部署服務啟停指令碼指令碼
- NoSQL資料庫興起SQL資料庫
- shell指令碼之批次清空檔案指令碼
- Oracle批次生成Merge指令碼程式Oracle指令碼
- python 建立mysql資料庫腳(執行sql)指令碼程式碼PythonMySql資料庫指令碼
- sqlserver資料庫還原儲存過程指令碼SQLServer資料庫儲存過程指令碼
- 啟停無線網路卡bat指令碼BAT指令碼
- 4.1.3 使用 Oracle Restart 元件啟停資料庫OracleREST元件資料庫
- 小程式批次刪除雲資料庫裡的資料資料庫
- Docker 實戰:搭建本地 Registry 私有映象倉庫及批次匯入指令碼Docker指令碼
- JavaScript指令碼批次取消抖音喜歡JavaScript指令碼
- shell指令碼:批次傳送curl請求指令碼
- Shell多執行緒備份資料庫的指令碼執行緒資料庫指令碼
- mssql sqlserver 使用sql指令碼 清空所有資料庫表資料的方法分享SQLServer指令碼資料庫
- 補錄資料指令碼指令碼
- SQL Server2019資料庫備份與還原指令碼,資料庫可批量備份SQLServer資料庫指令碼
- openresty+redis配合 lua指令碼封停 IPRESTRedis指令碼
- mybatis oracle資料庫批次插入資料,忽略主鍵重複MyBatisOracle資料庫
- ORACLE 12C RAC資料庫的啟停Oracle資料庫
- redis-13.資料庫通用指令Redis資料庫
- 自動定時備份 mysql 資料庫 的 shell 指令碼MySql資料庫指令碼