logo资料库

rman备份恢复详细方案.docx

第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
资料共22页,剩余部分请下载后查看
一、备份工具
1.rman简介
2.rman特点
二、备份模式
1.全量备份
2.差异增量备份
3.累计增量备份
4.快速增量备份
三、备份策略
1.备份计划
2.备份策略
四、备份存储
五、备份脚本
1.全量备份脚本
2.增量备份脚本
六、数据库备份
1.全量备份
2.增量备份
3.备份检查
七、数据库恢复
1.拷贝备份集
2.恢复参数文件
3.恢复控制文件
4.异机注册备份集
5.还原数据文件
6.恢复数据库
一、 备份工具 1. rman 简介 RMAN(Recovery Manager)是随 Oracle 服务器软件一同安装的工具软件,它可以用来备 份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。与传统 工具相比,RMAN 具有独特的优势:跳过未使用的数据块。当备份一个 RMAN 备份集时, RMAN 不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。 RMAN 使用 Oracle 特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地 压缩数据块中的一些典型数据。 2. rman 特点 (1) 支持增量备份:传统的 exp 与 expdp 备份工具,只能实现一个完整备份而不能增量备份, RMAN 采用备份级别实现增量备份,在一个完整的备份基础上采用增量备份可以大大减少 备份的数量; (2) 自动管理备份文件:RMAN 备份的数据是 RMAN 自动管理的,包括文件名字,备份文件 存储目录等; (3) 自动化备份与恢复:在备份与恢复操作时,使用简单的指令就可以实现备份与恢复,执 行过程完全有 RMAN 维护。 (4) 不产生重做信息: RMAN 联机备份不产生重做信息。 (5) 支持映像复制: 使用 RMAN 可以实现映像复制,映像以操作系统的文件格式存在,这 种复制类似于用户管理的脱机备份方式。 (6) 备份的数据文件压缩处理: RMAN 提供一个参数,说明是否对备份文件进行压缩,压 缩的备份文件以二进制文件格式存在,可以减少备份文件的存储空间。 (7) 备份文件有效性检查功能: 可以在备份之后恢复检测备份文件是否可用,避免无效恢 复操作。
二、 备份模式 Rman 支持全量备份,差异增量备份,累计增量备份,快速增量备份 1. 全量备份 备份一次全库的备份,可以不添加 level0 关键字,可以添加 level 0 进行标识,如果想使用对此 全备份添加增量备份,那么必须使用 level0 进行标识 2. 差异增量备份 是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份方式,一般以 level1 进行标识 3. 累计增量备份 是备份上级备份以来所有变化的块,因为累积增量是备份上级备份以来所有变化的数据块, 所以累积增量需要更多的备份时间,同时需要较小的恢复时间; 而差异增量正好相反,它可以备份同级备份以来变化的数据块。所以会减少备份时间,但需 要更多的恢复时间.在 oracle 9 中增量备份需要通过扫描整个数据库的数据块才能知道哪些 数据块发生了变化,这是一个代价很大,时间很长的过程,而且由于增量备份形成多个不同 的备份集,使恢复变得更加不可靠,所以增量备份在版本 9 中仍然不被推荐使用;在 10g 中, 增量备份作了很大的改进,不需要再扫描所有数据块就能得知哪些数据块发生变化(块跟踪), 从而大大提升备份效率。但这些却以牺牲磁盘 i/o 为代价,所以在 oltp 事务系统中还得衡量 是否愿意以 i/o 为代价来保证安全及高可用性。10g 还支持增量合并,增量备份可支持 7 级 增量。 4. 快速增量备份 开 启 块 跟 踪 功 能 (Database Backup and Recovery Basics 4.4.4 Improving Incremental Backup Performance: Change Tracking)会在文件中记录 oracle 数据块的变化,在备份的时候
直接读取此文件,获取变化数据块的信息,从而加速增量备份速度. SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/app/oracle/product/oradata/fatdb/rman_chg.log' reuse; Database altered. 需要说明的是 10g 起 oracle 官方只推荐使用 level 0 和 level 1 级备份,10g 还能使用 level 2 并不推荐使用。 首先看下 Oracle 官方解释 载至在线文档 Database Backup and Recovery Basics 4.4 节 RMAN Incremental Backups: A level 1 incremental backup can be either of the following types: A differential backup, which backs up all blocks changed after the most recent incremental backup at level 1 or 0 A cumulative backup, which backs up all blocks changed after the most recent incremental backup at level 0 Incremental backups are differential by default. 也就是 differential 是上次备份(不论是 level 0 或者 level 1)至今的变化数据,这个是 level 1 的缺省值。而 cumulative 是从上次 level 0 备份后至今的所有的变化数据,也就是说,如果 在 level 0 至今,中间如果有若干次增量备份(level 1 的 differential 或者 cumulative ), 所有的变化内容都将保存在这个增量集中。 增量备份的 level 1 是从上次 0 或者 1 至今的变化,而 level 2 是从上次备份至今的增量,无 论是 0 或者 1 或者 2; 累积备份的 level 1 是从上次 0 至今的累积变化,而 level 2 是上次 level 0 或者 level 1 至今的 累积增量(包括期间的 level 2 增量累计和)集合下图理解:
三、 备份策略 1. 备份计划 备份采用 linux 自带的 crontab 定时任务进行 rman 备份.在每天的 23:00 进行备份 2. 备份策略 备份策略为每周六和周三做一次全量备份,其它时间做 level 1 的增量备份.并且只保留两份 可用的备份版本.删除过期的备份数据 星期 周日 周一 周二 备份方式 Level0 全量备份 Level1 增量备份 Level1 增量备份
周三 周四 周五 周六 Level0 全量备份 Level1 增量备份 Level1 增量备份 Level1 增量备份 四、 备份存储 生产数据库采用的虚拟化设备,由于 nfs 效率太慢,所以备份采用本地存储的方式. 五、 备份脚本 1. 全量备份脚本 每周的周日和周三进行全库的 level0 备份,备份脚本如下: [oracle@ptdb1 scripts]$ cat backup_level0.sh rman target / <
release channel c1; release channel c2; release channel c3; release channel c4; } 2. 增量备份脚本 每周的其它时间进行 level1 的增量备份,脚本如下: [oracle@ptdb1 scripts]$ cat backup_level1.sh rman target / <
备份计划,每周的周日和周一 23:00 备份全库 level0,每周的其它时间备份 level1 增量: 六、 数据库备份 1. 全量备份 每天的 23:00 执行备份脚本,level0 备份日志如下: Recovery Manager: Release 11.2.0.4.0 - Production on Wed Mar 6 11:33:56 2019 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: ORCL (DBID=1524318178) RMAN> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 12> 13> using target database control file instead of recovery catalog allocated channel: c1 channel c1: SID=3791 instance=orcl1 device type=DISK allocated channel: c2 channel c2: SID=4356 instance=orcl1 device type=DISK
allocated channel: c3 channel c3: SID=4736 instance=orcl1 device type=DISK allocated channel: c4 channel c4: SID=4922 instance=orcl1 device type=DISK Starting backup at 06-MAR-2019 11:34:01 channel c1: starting compressed incremental level 0 datafile backup set channel c1: specifying datafile(s) in backup set input datafile file number=00017 name=+DATA/orcl/datafile/ek_tool.281.996540333 input datafile file number=00021 name=+DATA/orcl/datafile/cdr.285.996540349 input datafile file number=00004 name=+DATA/orcl/datafile/undotbs2.264.996537471 input datafile file number=00005 name=+DATA/orcl/datafile/users.265.996537473 input datafile file number=00009 name=+DATA/orcl/datafile/mq.273.996539359 channel c1: starting piece 1 at 06-MAR-2019 11:34:03 channel c2: starting compressed incremental level 0 datafile backup set channel c2: specifying datafile(s) in backup set input datafile file number=00006 name=+DATA/orcl/datafile/ek_tool.270.996539355 input datafile file number=00020 name=+DATA/orcl/datafile/cdr.284.996540347 input datafile file number=00001 name=+DATA/orcl/datafile/system.260.996537457 input datafile file number=00015 name=+DATA/orcl/datafile/mq.279.996540321 input datafile file number=00011 name=+DATA/orcl/datafile/cdr.275.996539361 channel c2: starting piece 1 at 06-MAR-2019 11:34:03 channel c3: starting compressed incremental level 0 datafile backup set channel c3: specifying datafile(s) in backup set input datafile file number=00018 name=+DATA/orcl/datafile/ek_tool.282.996540333 input datafile file number=00003 name=+DATA/orcl/datafile/undotbs1.262.996537465 input datafile file number=00002 name=+DATA/orcl/datafile/sysaux.261.996537461
分享到:
收藏