shell脚本之全库冷备份

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本之全库冷备份相关的知识,希望对你有一定的参考价值。

#!/bin/bash
backup_dir=/oracle/backup
log_file=$ORACLE_BASE/admin/$ORACLE_SID/cold_backup_$ORACLE_SID.log
echo "Backuping cold backup..." >$log_file
data>>$log_file

sqlplus -s / as sysdba <<EOF >>$log_file
set pagesize 0 linesize 1000 feedback off heading off
spool file_copy_$ORACLE_SID.sh
select 'cp '||name ||' $backup_dir/' from v\$controlfile;
select 'cp '||file_name||' $backup_dir/' from dba_data_files;
select 'cp '||member||' $backup_dir/' from v\$logfile;
spool off
shutdown immediate;
!bash file_copy_$ORACLE_SID.sh
startup
exit;
EOF

rm -r file_copy_$ORACLE_SID.sh

if [ -e $ORACLE_HOME/dbs/init$ORACLE_SID.ora ]
then
cp $ORACLE_HOME/dbs/init$ORACLE_SID.ora $backup_dir/
fi

if [ -e $ORACLE_HOME/dbs/spfile$ORACLE_SID.ora ]
then
#cp $ORACLE_HOME/dbs/spfile$ORACLE_SID.ora $backup_dir/
fi

if [ -e $ORACLE_HOME/dbs/orapw$ORACLE_SID ]
then
#cp $ORACLE_HOME/dbs/orapw$ORACLE_SID $backup_dir/
fi
echo "Cold backup finished.">> $log_file
data>>$log_file


PS:来源《基于Linux的Oracle数据库管理》,代码还可扩展,当前脚本较为单一

以上是关于shell脚本之全库冷备份的主要内容,如果未能解决你的问题,请参考以下文章

MySql DUMP 自动备份数据库 Shell 脚本

MySql DUMP 自动备份数据库 Shell 脚本

MySql DUMP 自动备份数据库 Shell 脚本

mysql怎么操作备份

Linux系统shell脚本之mysql备份

[Shell 脚本] 备份数据库文件至OSS服务(纯shell脚本无sdk)