非归档模式的数据恢复能力是比较弱的
一般出现问题后,通常是把数据库整个还原到备份点
非归档的备份方法:
冷备(关库后备份),闪备要备哪些东西呢?控制文件、数据文件,
如果需要的话,还备日志文件、参数文件、密码文件
有时文件比较多与比较分散,手工难免出错,我们最好写脚本来做
set heading off;
set feedback off;
set pagesize 0;
set trimspool on;
spool /share/ocp/col_backup2.sql;
select 'shutdown immediate' from dual
union all
select 'host cp -v '||name||' /u03/backup/' from v$datafile
union all
select 'host cp -v '||name||' /u03/backup/' from v$controlfile
union all
select 'host cp -v '||member||' /u03/backup/' from v$logfile
union all
select 'host cp ${ORACLE_HOME}/dbs/spfile${ORACLE_SID}.ora /u03/backup/' from dual
union all
select 'host cp ${ORACLE_HOME}/dbs/orapw${ORACLE_SID} /u03/backup/' from dual
union all
select 'startup' from dual;
spool off;
@/share/ocp/col_backup2.sql;
为了能每天定时备份,我们可以做个定时任务
[oracle@t183 ~]$ crontab -e
01 04 * * * /share/ocp/col_backup.sh >> /home/oracle/backup_$(date +%Y_%m_%d-%H:%M:%S).log
[oracle@t183 ~]$ vim /share/ocp/col_backup.sh
#!/bin/bash
# oracle auto backup
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2/db_1
export ORACLE_SID=orcl
export LD_LIBRARY=$ORACLE_HOME/lib
export EDITOR=vi
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
sqlplus sys/oracledb11g as sysdba< @/share/ocp/col_backup1.sql;
quit;
EOF
非归档模式下的恢复
任何一个文件出问题都要把把有的数据文件、控制文件、日志文件还原,还原前要停库
为了加快恢复速度,建议在备份完后,立即生成还原脚本,
set heading off;
set feedback off;
set pagesize 0;
set trimspool on;
spool /share/ocp/col_restore2.sql;
select 'host cp -v /u03/backup'||substr(name,instr(name,'/',-1))||' '||name from v$controlfile
union all
select 'host cp -v /u03/backup'||substr(name,instr(name,'/',-1))||' '||name from v$datafile
union all
select 'host cp -v /u03/backup'||substr(member,instr(member,'/',-1))||' '||member from v$logfile
union all
select 'host cp -v /u03/backup/spfile${ORACLE_SID}.ora ${ORACLE_HOME}/dbs' from dual
union all
select 'host cp -v /u03/backup/orapw${ORACLE_SID} ${ORACLE_HOME}/dbs' from dual;
spool off;
一般出现问题后,通常是把数据库整个还原到备份点
非归档的备份方法:
冷备(关库后备份),闪备要备哪些东西呢?控制文件、数据文件,
如果需要的话,还备日志文件、参数文件、密码文件
有时文件比较多与比较分散,手工难免出错,我们最好写脚本来做
set heading off;
set feedback off;
set pagesize 0;
set trimspool on;
spool /share/ocp/col_backup2.sql;
select 'shutdown immediate' from dual
union all
select 'host cp -v '||name||' /u03/backup/' from v$datafile
union all
select 'host cp -v '||name||' /u03/backup/' from v$controlfile
union all
select 'host cp -v '||member||' /u03/backup/' from v$logfile
union all
select 'host cp ${ORACLE_HOME}/dbs/spfile${ORACLE_SID}.ora /u03/backup/' from dual
union all
select 'host cp ${ORACLE_HOME}/dbs/orapw${ORACLE_SID} /u03/backup/' from dual
union all
select 'startup' from dual;
spool off;
@/share/ocp/col_backup2.sql;
为了能每天定时备份,我们可以做个定时任务
[oracle@t183 ~]$ crontab -e
01 04 * * * /share/ocp/col_backup.sh >> /home/oracle/backup_$(date +%Y_%m_%d-%H:%M:%S).log
[oracle@t183 ~]$ vim /share/ocp/col_backup.sh
#!/bin/bash
# oracle auto backup
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2/db_1
export ORACLE_SID=orcl
export LD_LIBRARY=$ORACLE_HOME/lib
export EDITOR=vi
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
sqlplus sys/oracledb11g as sysdba< @/share/ocp/col_backup1.sql;
quit;
EOF
非归档模式下的恢复
任何一个文件出问题都要把把有的数据文件、控制文件、日志文件还原,还原前要停库
为了加快恢复速度,建议在备份完后,立即生成还原脚本,
set heading off;
set feedback off;
set pagesize 0;
set trimspool on;
spool /share/ocp/col_restore2.sql;
select 'host cp -v /u03/backup'||substr(name,instr(name,'/',-1))||' '||name from v$controlfile
union all
select 'host cp -v /u03/backup'||substr(name,instr(name,'/',-1))||' '||name from v$datafile
union all
select 'host cp -v /u03/backup'||substr(member,instr(member,'/',-1))||' '||member from v$logfile
union all
select 'host cp -v /u03/backup/spfile${ORACLE_SID}.ora ${ORACLE_HOME}/dbs' from dual
union all
select 'host cp -v /u03/backup/orapw${ORACLE_SID} ${ORACLE_HOME}/dbs' from dual;
spool off;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21175589/viewspace-755946/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/21175589/viewspace-755946/