Cold backup script

For testing and development DB, it’ archive mode is noarchivelog, and it can be closed on non-working time.

We can use closed database backup.it have following advantages:

Conceptually simple

Easy to perform

Require little operator interaction

[@more@]

--------- backup mutiple backup sets by date dirctory ---------------

#!/bin/bash

## set enviroment variable

ORACLE_SID=shenzhen

ORACLE_HOME=/u01/oracle

ORACLE_BASE=/u01

NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export ORACLE_SID ORACLE_HOME ORACLE_BASE NLS_LANG

## set the backup directory

backdate=`date -u +%Y%m%d`

backupdir=/u01/backup/cold/$backdate

mkdir -p $backupdir

echo "**************************************"

echo "* cold_backup.sh "

echo "**************************************"

$ORACLE_HOME/bin/sqlplus -s "/ as sysdba" << EOF

set feedback off heading off verify off trimspool off

set pagesize 0 linesize 200

-- Set SQL*Plus user variables used in this script

define fil='/u01/workarea/cold_backup.sql'

prompt ... spooling to &fil

-- Create Backup command

spool &fil

select 'host cp ' || name ||' $backupdir' from v$datafile;

select 'host cp ' || member || ' $backupdir' from v$logfile;

select 'host cp ' || name || ' $backupdir' from v$controlfile;

select 'host cp $ORACLE_HOME/dbs/spfileshenzhen.ora $ORACLE_HOME/dbs/orapwshenzhen $backupdir' from dual;

spool off;

-- Shutdown Database

shutdown immediate;

@ &fil

startup;

exit

EOF

------------------------ backup keeping only one backup set ---------

#!/bin/bash

## set enviroment variable

ORACLE_SID=shenzhen

ORACLE_HOME=/u01/oracle

ORACLE_BASE=/u01

NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export ORACLE_SID ORACLE_HOME ORACLE_BASE NLS_LANG

echo "**************************************"

echo "* cold_backup.sh "

echo "**************************************"

$ORACLE_HOME/bin/sqlplus -s "/ as sysdba" << EOF

set feedback off heading off verify off trimspool off

set pagesize 0 linesize 200

-- Set SQL*Plus user variables used in this script

define dir='/u01/backup/cold/'

define fil='/u01/workarea/cold_backup.sql'

prompt ... spooling to &fil

-- Create Backup command

spool &fil

select 'host cp ' || name ||' &dir' from v$datafile;

select 'host cp ' || member || ' &dir' from v$logfile;

select 'host cp ' || name || ' &dir' from v$controlfile;

select 'host cp $ORACLE_HOME/dbs/spfileshenzhen.ora $ORACLE_HOME/dbs/orapwshenzhen &dir' from dual;

spool off;

-- Shutdown Database

shutdown immediate;

@ &fil

startup;

exit

EOF

Reference : http://huiyisky.itpub.net/

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12472709/viewspace-1037121/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12472709/viewspace-1037121/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值