Oracle Service On Linux
It is convenient for recovery your lab environment quickly
using shell.
1@@@@copy.sh
####begin########################################################
#!/bin/sh
# 1 Decision Root or Oracle Begin
if [ $(id -u) == 0 ]
then
echo "Please login as oracle NOT root."
exit
fi
# 1 Decision Root or Oracle End
# 2 Stop DB Begin
/usr/bin/stopdb
rm -rf /u01/app/oracle/flash_recovery_area/ORCL/flashback
# 2 Stop DB End
# 3 Man Directory Begin
rm -rf /u01/app/oracle/man_recovery_area/orcl/backup/
mkdir -p /u01/app/oracle/man_recovery_area/orcl 2>/dev/null
# 3 Man Directory End
# 4 Backup Important Begin
cd /u01/app/oracle
mkdir -p ./backup/flash_recovery_area/ORCL 2>/dev/null
cp -rp ./flash_recovery_area/ORCL/* ./backup/flash_recovery_area/ORCL/
mkdir -p ./backup/oradata/orcl 2>/dev/null
cp -rp ./oradata/orcl/* ./backup/oradata/orcl/ 2>/dev/null
mkdir -p ./backup/oradata/ORCL 2>/dev/null
cp -rp ./oradata/ORCL/* ./backup/oradata/ORCL/ 2>/dev/null
# 4 Backup Important End
# 5 Backup Miscellaneous Begin
mkdir -p ./backup/admin/orcl 2>/dev/null
cp -rp ./admin/orcl/* ./backup/admin/orcl/
mkdir -p ./backup/product/10.2.0/db_1/dbs 2>/dev/null
cp -p ./product/10.2.0/db_1/dbs/orapworcl ./backup/product/10.2.0/db_1/dbs/
cp -p ./product/10.2.0/db_1/dbs/spfileorcl.ora ./backup/product/10.2.0/db_1/dbs/
mv ./backup/ /u01/app/oracle/man_recovery_area/orcl
# 5 Backup Miscellaneous End
# 6 Begin DB Start
/usr/bin/startdb
# 6 Begin DB Stop
######end########################################################
2@@@@rever.sh
####begin########################################################
#!/bin/sh
# 1 Decision Root or Oracle Begin
if [ $(id -u) == 0 ]
then
echo "Please login as oracle NOT root."
exit
fi
# 1 Decision Root or Oracle End
# 2 Stop DB Begin
sqlplus /nolog <<EOF
conn / as sysdba
shutdown abort
quit
EOF
emctl stop dbconsole
# 2 Stop DB End
# 3 Delete Begin
cd /u01/app/oracle/
rm -rf ./admin/orcl
rm -rf ./flash_recovery_area/ORCL
rm -rf ./oradata/orcl 2>/dev/null
rm -rf ./oradata/ORCL 2>/dev/null
rm -rf ./product/10.2.0/db_1/dbs/orapworcl
rm -rf ./product/10.2.0/db_1/dbs/spfileorcl.ora
# 3 Delete End
# 4 Recovery Begin
cd /u01/app/oracle/man_recovery_area/orcl/backup
tar cf - ./ | ( cd /u01/app/oracle/; tar xf - )
# 4 Recovery End
/usr/bin/startdb
######end########################################################
3@@@@/usr/bin/startdb
####begin########################################################
#!/bin/sh
# 1 Decision Root or Oracle Begin
if [ $(id -u) == 0 ]
then
echo "Please login as oracle NOT root."
exit
fi
# 1 Decision Root or Oracle End
# 2 Stop DB Begin
sqlplus /nolog <<EOF
conn / as sysdba
shutdown abort
quit
EOF
emctl stop dbconsole
# 2 Stop DB End
# 3 Delete Begin
cd /u01/app/oracle/
rm -rf ./admin/orcl
rm -rf ./flash_recovery_area/ORCL
rm -rf ./oradata/orcl 2>/dev/null
rm -rf ./oradata/ORCL 2>/dev/null
rm -rf ./product/10.2.0/db_1/dbs/orapworcl
rm -rf ./product/10.2.0/db_1/dbs/spfileorcl.ora
# 3 Delete End
# 4 Recovery Begin
cd /u01/app/oracle/man_recovery_area/orcl/backup
tar cf - ./ | ( cd /u01/app/oracle/; tar xf - )
# 4 Recovery End
/usr/bin/startdb
######end########################################################
4@@@@/usr/bin/stopdb
####begin########################################################
#!/bin/sh
sqlplus /nolog << EOF
conn / as sysdba
shutdown immediate
exit
EOF
emctl stop dbconsole
#isqlplusctl stop
/usr/bin/stopasm
######end########################################################
/usr/bin/startasm
####begin########################################################
#!/bin/sh
ORACLE_SID=+ASM
sqlplus /nolog << EOF
conn / as sysdba
startup
exit
EOF
######end########################################################
5@@@@/usr/bin/stopasm
####begin########################################################
#!/bin/sh
ORACLE_SID=+ASM
/u01/app/oracle/product/10.2.0/db_1/bin/sqlplus /nolog << EOF
conn / as sysdba
shutdown immediate
exit
EOF
######end########################################################
6@@@@/etc/rc.d/init.d
[root@station60 init.d]# ll oracle
-rwxr-xr-x 1 root root 949 Nov 4 16:37 oracle
####begin####################################################
[root@station60 init.d]# cat oracle
#!/bin/bash
# /etc/rc.d/init.d/oracle
# chkconfig: - 85 15
# description: oracle9id is meant to run under Linux Oracle Server
# Source function library.
. /etc/rc.d/init.d/functions
. /etc/bashrc
export ORACLE_NAME=oracle
export ORACLE_SID=orcl
#Start the oracle Server
#The following command assumes that the oracle login will not prompt the password
start() {
echo -n "Starting Oracle Server:"
su - $ORACLE_NAME -c 'lsnrctl start'
su - $ORACLE_NAME -c startdb
}
stop() {
echo -n "Shutting down Oracle Server:"
su - $ORACLE_NAME -c 'lsnrctl stop'
su - $ORACLE_NAME -c stopdb
}
status() {
statusdb
}
restart() {
echo -n "Restart Oracle Server"
stop
start
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|reload)
stop
start
;;
*)
echo "Usage: $0 {start|stop|status|reload|restart}"
exit 1
;;
esac
exit 0
######end####################################################
Shell for Oracle
原创emperor_majesty 博主文章分类:B_Recovery ©著作权
文章标签 shell for oracle 文章分类 Oracle 数据库
上一篇:External Table

-
Shell概述、编写及执行脚本、Shell变量
shell基础
Shell bash vim -
shell 执行 oracle sql
oracle
oracle oracle sql -
shell脚本安装Oracle(rpm版)
参考文章linux安装Oracle11GOracle 设置开机自启动脚本#!/bin/bash# vim:sw=4:ts=4:et<<INFOAUTHOR:运维@小兵DATE:20
oracle linux shell安装Oracle sed