天天看点

Oracle RMAN备份还原方案

1、修改rman配置,能够恢复到7天内的任一时间点

su - oracle

rman target /

configure retention policy to recovery window of 7 days;

show all;

2、创建备份数据库和归档日志rman脚本online_database_archivelog.rman

#创建备份目录

mkdir -pv /backup/oraclebk/database

mkdir -pv /backup/oraclebk/archivelog

chown -R oracle.oinstall

mkdir scripts

cd scripts

vim online_database_archivelog.rman

#rman脚本内容

run {

allocate channel t1 type disk;

allocate channel t2 type disk;

backup as compressed backupset database format '/backup/oraclebk/database/database.%T.%U.rman';

backup as compressed backupset archivelog all delete all input format '/backup/oraclebk/archivelog/archivelog.%T.%U.rman';

}

delete noprompt obsolete;

#delete noprompt obsolete; 删除无效或过期的备份集

3、创建备份shell脚本

vim rman_backup.sh

#shell脚本内容

#!/bin/bash

source ~/.bash_profile

rman target / @/home/oracle/scripts/online_database_archivelog.rman > /home/oracle/scripts/backup.log

4、添加定时任务每天04:00备份

crontab -e

00 04 * sh /home/oracle/scripts/rman_backup.sh >/dev/null 2>&1

5、执行基于时间点不完全恢复(要求归档日志和重做日志完整,RAC环境需要将另一实例关闭)

shutdown immediate;

startup mount;

set until time = "to_date('02-02-18 16:20:00','dd-mm-yy hh24:mi:ss')";

restore database;

recover database;

alter database open resetlogs;

     本文转自1321385590 51CTO博客,原文链接:http://blog.51cto.com/linux10000/2068231,如需转载请自行联系原作者