RMAN相关
RMAN使用详解........
数据库备份方案(oracle)
目录
数据库备份方案... 1
文档控制... 1
目录... 2
一 前言... 3
二 备份恢复工具简介... 3
1,常用的imp/exp工具... 3
2,恢复管理器(RMAN)... 3
三 配置RMAN. 4
1,配置归档(ARCHIVELOG)模式... 4
2,配置控制文件自动备份... 4
3,配置控制文件记录保持时间... 4
4,配置保留策略的恢复窗口... 4
5,设定默认保存备份文件的路径... 4
6,启用快速增量备份... 4
7,配置RMAN使用优化(OPTIMIZATION)模式... 4
8,配置RMAN使用压缩备份集... 4
四 多级备份策略... 5
1,零级备份脚本... 5
2,一级增量备份脚本... 5
3,一级差异备份脚本... 6
4,归档文件备份脚本... 6
五 管理RMAN. 7
1,如果手动删除了备份文件的话,需要执行交叉检验让RMAN进行同步。... 7
2,报告已不用(OBSOLETE)和过期(EXPIRED)的备份文件。... 7
3,删除已不用(OBSOLETE)和过期(EXPIRED)的备份文件。... 7
六 使用RMAN进行恢复... 7
1,完全恢复... 7
1.1,恢复整个数据库... 7
1.2,恢复指定表空间或数据文件... 8
2,不完全恢复... 8
3,块级别的恢复... 8
七 使用FLASHBACK进行快速恢复... 9
1,9i中的FLASHBACK:... 9
2,10g中的FLASHBACK:... 9
八 其他高可用性方案(High Availability)简介... 10
一 前言
如同社会总会有不公平、人总会犯错误、程序总会有BUG一样,数据库出现问题是不
可避免的,好的备份是项目成功应用的关键。
从独立的硬盘保存备份文件、主机与从机同步(DATA GUARD)到多实例单数据库的
负载平衡(RAC),按照不同的需求对应不同级别的技术,但其根本就是数据的冗余,用人力和物力来提高数据可用性。
强烈推荐备份到其他物理存储设备上,如另一块硬盘,以保证出现介质故障时可以顺利恢复。
二 备份恢复工具简介
1,常用的imp/exp工具
我们常用的imp/exp工具是由Oracle提供的用于在客户端把数据导出到dmp文件,进行数据转移和保存的方法,是逻辑备份。在11gR2中已经废弃exp,保留imp,相关操作由数据汞(Data Pump)的impdp/expdp代替。
优点为:
使用简单。
可以指定导出某个逻辑对象(整个数据库或用户或表)
缺点为:
不能进行完全恢复(Complete Recovery)
只能备份数据文件(Data File)
全库导出对数据库压力较大
占用空间较大
2,恢复管理器(RMAN)
由Oracle提供的专业的备份与恢复工具,是物理备份。
优点为:
1: 可以进行完全恢复与不完全恢复
2: 可以备份所有数据库文件(控制文件,服务器参数文件,归档日志文件,数据文件)
3: 具有功能强大的控制能力和脚本编写语言
4: 支持在线热备份
5 支持多级增量备份
6: 支持并行备份,恢复
7: 减少备份数据量(压缩、块级备份)
8: 可将文件备份到磁盘或磁带
9: 支持在线块级别恢复
10,可以限制速率,减少备份中对系统的造成的影响
11,等等。。。
三 配置RMAN
1,配置归档(ARCHIVELOG)模式
数据库在装载(MOUNT)模式下执行下列操作开启归档模式
SQL> ALTER DATABASE ARCHIVELOG;
2,配置控制文件自动备份
RMAN> SHOW ALL ------------查看所有参数
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
3,配置控制文件记录保持时间
SQL> ALTER SYSTEM SET CONTROL_FILE_RECORD_KEEP_TIME=45;
设置RMAN备份信息保存在控制文件中的时间,要大于等于保留策略的恢复窗口。
4,配置保留策略的恢复窗口
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 31 DAYS;
备份文件超过这个日期时RMAN会标记为已不用(OBSOLETE):
RMAN> REPORT OBSOLETE;
数据库中的文件超过这个日期时RMAN会报告需要备份:
RMAN> REPORT NEED BACKUP;
5,设定默认保存备份文件的路径
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/oradata/BACKUP/%U' ;
6,启用快速增量备份
在9i中,RMAN进行增量备份要扫描所有数据文件,找出发生变更的数据块,然后进行备份。
在10g中,增加了一个新特性---块更改跟踪(Block Change Tracking),会把发生变更的数据块记录在一个跟踪文件内,这样就避免了增量备份时对数据库的全面扫描。
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/oracle/admin/orcl/scripts/BLOCK_CHANGE_TRACKING.TRC';
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/oracle/admin/popdb/bdump/BLOCK_CHANGE_TRACKING.TR