windows下的oracle数据库rman自动备份和恢复文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库rman备份恢复文档
一.Rman简介
RMAN是ORACLE提供的恢复和备份工具,是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日
志和控制文件,用来执行完全或不完全的数据库恢复。与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。当备份一个RMAN 备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法
获知那些是未被使用的数据块。RMAN使用Oracle特有的二进制压缩
模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的
一些典型数据。
二.系统规划
数据库备份文件不建议与系统盘(C盘)、oracle数据文件存放盘(D 盘)存放在一起,本文单独存放于E盘。
注:在进行以下操作前要根据自己的环境建立如下目录“”,“’E:\archivelog_backup”,“E:/orabackup_script/”。本文用到的命令中的标点均为英文
字符下的标点。
三.设置oracle数据库为归档模式(ARCHIVELOG)
按以下步骤操作,检查oracle数据库是否为归档模式。
1.选择“开始”“系统”“运行”,输入cmd,按回车。
2.输入“sqlplus”,按回车。
3.输入“system / as sysdba ”,按回车。
4.输入数据库system账号的密码,按回车。
5.查看数据库归档模式,输入“archive log list;”,按回车。如下图所示。
如果“数据库日志模式”为“非存档模式”,则需按照如下步骤开启归档模式:
1.设置数据库日志归档路径。
输入“alter system set log_archive_dest=’archivelog_backup’ scope=spfile; ”,按回车。
2.关闭数据库。输入“shutdown immediate;”,按回车。
3. 启动数据库到mount状态。输入“startup mount;”,按回车。
4. 更改数据库的归档模式。输入“alter database archivelog;”,按回车。
5.打开数据库。输入“alter database open;”,按回车。
6.验证数据库是否已归档。输入“alter database archivelog;”,按回车。
如上图所示,若“自动存档”为“启用”模式,则数据库已经启用自动
归档模式。
四.Oracle 数据备份策略
通过OracleRMAN实现数据的增量备份,每周进行两次Level0的数据确全备份,其余时间进行Level1的增量备份,;同时每天对Oraclearchivelog进行两次备份(备份次数及备份时间点应根据实际
运行情况加以调整),。这样的备份策略的目的时一旦发生故障需要进
行数据库恢复时,只需要恢复一个全备份和至多两个增量备份,大大
加快了数据库的备份速度。在进行数据库recover时,实际上只需要最后一天的archivelog。
LEVEL 0 1 1 0 1 1 1 0
DAY Sun Mon Tue Wed Thu Fri Stat Sun
Rman备份策略示意图
五. 备份脚本的编写
1.编写脚本前要更改rman的默认配置选项
(1)选择“开始”“系统”“运行”,输入cmd,按回车。
(2)输入“rman target / ”,按回车。
(3)开启控制文件自动备份。输入“configure controlfile autobackup on; ”,按
回车。
(4)更改控制文件备份路径。输入“CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO ‘E:\orabackup\%F’;”,按回车。
(5)备份保留策略。
输入“CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;”。基于时间的备份保留策略,保留最近7天的备份文件,可以将数据库系统恢复到最近七天的任意时刻。任何超过最近七天的数据库备份将被标
记为obsolete。
2.按照制定的备份策略编写备份脚本
(1)设置显示已知文件的扩展名
选择“开始”“设置”“控制面板”“文件夹选项”,
打开文件夹选项设置页面后,点击上方标签栏的中间,即查看标签栏。
在查看标签中,向下拖动右边进度条,找到隐藏已知文件扩展名这个选项,将前面小方框中取消选定。设置完成,点击确定退出。
(2)做一个文件后缀为.bat的0级备份批处理文件E:/orabackup_script/auto_level_0_rman.bat。容如下:
rem run rman
rman cmdfile=level_0_rman.txt msglog= e:/orabackup/level_0_rmanlog%date:~0,10%.log
然后新建一个“E:/orabackup_script/level_0_rman.txt”文本文件。容如下:
connect target /
list backup;
report obsolete;
delete obsolete;
run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
backup as compressed backupset incremental level 0 database
format 'e:/orabackup/full_%d_%T_%s'