RMAN备份

rman备份说明
1、运行dzda_rman_archive_start.bat,将数据库修改为归档日志模式。
2、运行dzda_rman_config.bat,配置rman备份参数。
3、添加计划任务,在周六零时运行dzda_backup_0.bat进行全库备份。
周一至周五指定时间运行dzda_backup_1.bat进行增量备份。
rman恢复说明:
1、关闭数据库
shutdown immediate;
2、运行dzda_rman_restore.bat进行恢复。

具体文件说明:
1、dzda_backup_0.bat
*********************************************************************************************************
echo 开始零级备份
set ORACLE_SID=cgsdzda
rman cmdfile='d:/backup/scripts/dzda_del_obsolete.rcv'  log='d:/backup/log/dzda_del_obsolete0.log'
rman cmdfile='d:/backup/scripts/dzda_backup0.rcv'       log='d:/backup/log/dzda_backup0.log'
rman cmdfile='d:/backup/scripts/dzda_rman_validate.rcv' log='d:/backup/log/dzda_rman_validate0.log'
echo 开始零级备份
*********************************************************************************************************
2、dzda_backup_1.bat
echo 开始增量备份
set ORACLE_SID=cgsdzda
rman cmdfile='d:/backup/scripts/dzda_del_obsolete.rcv'  log='d:/backup/log/dzda_del_obsolete1.log'
rman cmdfile='d:/backup/scripts/dzda_backup1.rcv'       log='d:/backup/log/dzda_backup1.log'
rman cmdfile='d:/backup/scripts/dzda_rman_validate.rcv' log='d:/backup/log/dzda_rman_validate1.log'
echo 结束增量备份
*********************************************************************************************************
3、dzda_rman_archive_start.bat
echo 开始修改数据库为归档日志模式
set ORACLE_SID=cgsdzda
rman cmdfile='d:/backup/scripts/dzda_rman_archive_start.rcv'  log='d:/backup/log/dzda_rman_archive_start.log'
echo 结束修改数据库为归档日志模式
*********************************************************************************************************
4、dzda_rman_config.bat
echo 开始RMAN配置
set ORACLE_SID=cgsdzda
rman cmdfile='d:/backup/scripts/dzda_rman_config.rcv'  log='d:/backup/log/dzda_rman_config.log'
echo 结束RMAN配置
*********************************************************************************************************
5、dzda_rman_restore.bat
echo 开始恢复数据库
set ORACLE_SID=cgsdzda
rman cmdfile='d:/backup/scripts/dzda_rman_resotre.rcv'  log='d:/backup/log/dzda_rman_restore.log'
echo 结束恢复数据库

*********************************************************************************************************
*********************************************************************************************************

RMAN脚本文件说明
1、dzda_backp0.rcv 0级备份脚本
connect target  sys/cgsdzda #注意修改为目标数据库的用户名和口令。
run{
    allocate  channel c1 type disk  maxpiecesize=2000M;
    allocate  channel c2 type disk  maxpiecesize=2000M;
    allocate  channel c3 type disk  maxpiecesize=2000M;
    backup incremental level 0 tag 'db0' format 'd:/backup/data/%d_%T_db0_%u_%s_%p' database; #将目录指向实际的备份目录
    sql 'alter system archive log current';
    crosscheck archivelog all;
    backup filesperset 3 format 'd:/backup/data/%d_%T_arch0_%u_%s_%p'  archivelog all delete input; #将目录指向实际的备份目录
    release channel c1;
    release channel c2;
    release channel c3;
    }
*********************************************************************************************************
2、dzda_backp1.rcv 1级备份脚本
connect target  sys/cgsdzda  #注意修改为目标数据库的用户名和口令。
run{
    allocate channel 'c1' type disk maxpiecesize=2000M;
    allocate channel 'c2' type disk maxpiecesize=2000M;
    allocate channel 'c3' type disk maxpiecesize=2000M;
    backup incremental level 1 tag 'db1' format 'd:/backup/data/%d_%T_db1_%u_%s_%p' database;#将目录指向实际的备份目录
    sql 'alter system archive log current';
    backup filesperset 3 format 'd:/backup/data/%d_%T_arch1_%u_%s_%p' archivelog all delete input;#将目录指向实际的备份目录
    release channel 'c1';
    release channel 'c2';
    release channel 'c3';
    }
*********************************************************************************************************
3、dzda-del_obsolete.rcv 删除冗余备份脚本
connect target sys/cgsdzda #注意修改为目标数据库的用户名和口令。
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired archivelog all;
delete obsolete;
exit;
*********************************************************************************************************
4、dzda_rman_archive_start.rcv修改数据库为归档日志模式脚本
connect target sys/cgsdzda #注意修改为目标数据库的用户名和口令。
shutdown immediate;
startup mount;
run{
SQL 'alter database archivelog';
SQL 'alter system set log_archive_start=true scope=spfile';
SQL 'alter database open';
}
shutdown immediate;
startup;
exit;
*********************************************************************************************************
5、#dzda_rman_config.rcv设置RMAN配置脚本
connect target sys/cgsdzda; #注意修改为目标数据库的用户名和口令。
run{
        CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 10 DAYS;    #数据备份结
果集的保留策略. 按可恢复到前10天的保留策略
        CONFIGURE CONTROLFILE AUTOBACKUP ON;
        CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:/back
up/data/%d_controlfile_%F';#将目录指向实际的备份目录
        CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
        CONFIGURE BACKUP OPTIMIZATION ON;
}
*********************************************************************************************************
6、#dzda_rman_restore.rcvRMAN恢复数据库脚本
connect target sys/cgsdzda #注意修改为目标数据库的用户名和口令。
set dbid = 3508272457;
shutdowm immediate;
startup nomount;
run{
        set controlfile autobackup format for device type disk to 'd:/backup/data/%d_controlfile_%F'; #将目录指向实际的备份目录
        restore controlfile from autobackup;
        alter database mount;
        restore database;
        recover database;
        alter database open resetlogs;
}
*********************************************************************************************************
7、#dzda_rman_vaildate.rcv检测备份是否有效脚本
connect target  sys/cgsdzda #注意修改为目标数据库的用户名和口令。
RESTORE DATABASE VALIDATE;
exit;
*********************************************************************************************************

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值