rman备份恢复详细方案_第1页
rman备份恢复详细方案_第2页
rman备份恢复详细方案_第3页
rman备份恢复详细方案_第4页
rman备份恢复详细方案_第5页
已阅读5页,还剩16页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上一、 备份工具1. rman简介RMAN(Recovery Manager)是随Oracle服务器软件一同安装的工具软件,它可以用来备份和恢复数据库文件、归档日志和控制文件,用来执行完全或不完全的数据库恢复。与传统工具相比,RMAN具有独特的优势:跳过未使用的数据块。当备份一个RMAN备份集时,RMAN不会备份从未被写入的数据块,而传统的方式无法获知那些是未被使用的数据块。RMAN使用Oracle特有的二进制压缩模式,与传统备份的压缩方式相比,能够最大程度地压缩数据块中的一些典型数据。2. rman特点(1) 支持增量备份:传统的exp与expdp备份工具,只能实现一

2、个完整备份而不能增量备份,RMAN采用备份级别实现增量备份,在一个完整的备份基础上采用增量备份可以大大减少备份的数量;(2) 自动管理备份文件:RMAN备份的数据是RMAN自动管理的,包括文件名字,备份文件存储目录等;(3) 自动化备份与恢复:在备份与恢复操作时,使用简单的指令就可以实现备份与恢复,执行过程完全有RMAN维护。(4) 不产生重做信息: RMAN联机备份不产生重做信息。(5) 支持映像复制: 使用RMAN可以实现映像复制,映像以操作系统的文件格式存在,这种复制类似于用户管理的脱机备份方式。(6) 备份的数据文件压缩处理: RMAN提供一个参数,说明是否对备份文件进行压缩,压缩的备

3、份文件以二进制文件格式存在,可以减少备份文件的存储空间。(7) 备份文件有效性检查功能: 可以在备份之后恢复检测备份文件是否可用,避免无效恢复操作。二、 备份模式Rman支持全量备份,差异增量备份,累计增量备份,快速增量备份 1. 全量备份备份一次全库的备份,可以不添加level0关键字,可以添加level 0进行标识,如果想使用对此全备份添加增量备份,那么必须使用level0进行标识2. 差异增量备份是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份方式,一般以level1进行标识3. 累计增量备份是备份上级备份以来所有变化的块,因为累积增量是备份上级备份以来所有变化的数据块,

4、所以累积增量需要更多的备份时间,同时需要较小的恢复时间;而差异增量正好相反,它可以备份同级备份以来变化的数据块。所以会减少备份时间,但需要更多的恢复时间.在oracle 9中增量备份需要通过扫描整个数据库的数据块才能知道哪些数据块发生了变化,这是一个代价很大,时间很长的过程,而且由于增量备份形成多个不同的备份集,使恢复变得更加不可靠,所以增量备份在版本9中仍然不被推荐使用;在10g中,增量备份作了很大的改进,不需要再扫描所有数据块就能得知哪些数据块发生变化(块跟踪),从而大大提升备份效率。但这些却以牺牲磁盘i/o为代价,所以在oltp事务系统中还得衡量是否愿意以i/o为代价来保证安全及高可用性

5、。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/f

6、atdb/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 a

7、ll blocks changed after the most recent incremental backup at level 1 or 0A cumulative backup, which backs up all blocks changed after the most recent incremental backup at level 0Incremental backups are differential by default.也就是differential 是上次备份(不论是level 0或者level 1)至今的变化数据,这个是level 1的缺省值。而cumula

8、tive 是从上次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定时

9、任务进行rman备份.在每天的23:00进行备份2. 备份策略备份策略为每周六和周三做一次全量备份,其它时间做level 1的增量备份.并且只保留两份可用的备份版本.删除过期的备份数据星期备份方式周日Level0 全量备份周一Level1 增量备份周二Level1 增量备份周三Level0 全量备份周四Level1 增量备份周五Level1 增量备份周六Level1 增量备份四、 备份存储生产数据库采用的虚拟化设备,由于nfs效率太慢,所以备份采用本地存储的方式. 五、 备份脚本1. 全量备份脚本每周的周日和周三进行全库的level0备份,备份脚本如下:oracleptdb1 scripts$

10、 cat backup_level0.sh rman target / <<EOFrunallocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;allocate channel c4 type disk;backup spfile format /u01/backup/spfile_%U_%T.bak;backup as compressed backupset incremental level 0 tag 'db0' database fo

11、rmat '/u01/backup/db0_%U_%T.bak'sql 'alter system archive log current'backup as compressed backupset archivelog all format '/u01/backup/arch_%U_%T.bak' delete input ;delete noprompt obsolete;release channel c1;release channel c2;release channel c3;release channel c4;2. 增量备份脚本

12、每周的其它时间进行level1的增量备份,脚本如下:oracleptdb1 scripts$ cat backup_level1.sh rman target / <<EOFrunallocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;allocate channel c4 type disk;backup as compressed backupset incremental level 1 tag 'db1' database format

13、 '/u01/backup/db1_%U_%T.bak'sql 'alter system archive log current'backup as compressed backupset archivelog all format '/u01/backup/arch_%U_%T.bak' delete input ;release channel c1;release channel c2;release channel c3;release channel c4;EOF备份保留两份备份版本,设置如下:备份计划,每周的周日和周一23:00备

14、份全库level0,每周的其它时间备份level1增量:六、 数据库备份1. 全量备份每天的23:00执行备份脚本,level0备份日志如下:Recovery Manager: Release 11.2.0.4.0 - Production on Wed Mar 6 11:33:56 2019Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.connected to target database: ORCL (DBID=)RMAN> 2> 3> 4> 5> 6&

15、gt; 7> 8> 9> 10> 11> 12> 13> using target database control file instead of recovery catalogallocated channel: c1channel c1: SID=3791 instance=orcl1 device type=DISKallocated channel: c2channel c2: SID=4356 instance=orcl1 device type=DISKallocated channel: c3channel c3: SID=4736

16、instance=orcl1 device type=DISKallocated channel: c4channel c4: SID=4922 instance=orcl1 device type=DISKStarting backup at 06-MAR-2019 11:34:01channel c1: starting compressed incremental level 0 datafile backup setchannel c1: specifying datafile(s) in backup setinput datafile file number=00017 name=

17、+DATA/orcl/datafile/ek_tool.281.input datafile file number=00021 name=+DATA/orcl/datafile/cdr.285.input datafile file number=00004 name=+DATA/orcl/datafile/undotbs2.264.input datafile file number=00005 name=+DATA/orcl/datafile/users.265.input datafile file number=00009 name=+DATA/orcl/datafile/mq.27

18、3.channel c1: starting piece 1 at 06-MAR-2019 11:34:03channel c2: starting compressed incremental level 0 datafile backup setchannel c2: specifying datafile(s) in backup setinput datafile file number=00006 name=+DATA/orcl/datafile/ek_tool.270.input datafile file number=00020 name=+DATA/orcl/datafile

19、/cdr.284.input datafile file number=00001 name=+DATA/orcl/datafile/system.260.input datafile file number=00015 name=+DATA/orcl/datafile/mq.279.input datafile file number=00011 name=+DATA/orcl/datafile/cdr.275.channel c2: starting piece 1 at 06-MAR-2019 11:34:03channel c3: starting compressed increme

20、ntal level 0 datafile backup setchannel c3: specifying datafile(s) in backup setinput datafile file number=00018 name=+DATA/orcl/datafile/ek_tool.282.input datafile file number=00003 name=+DATA/orcl/datafile/undotbs1.262.input datafile file number=00002 name=+DATA/orcl/datafile/sysaux.261.input data

21、file file number=00022 name=+DATA/orcl/datafile/mdr.286.input datafile file number=00014 name=+DATA/orcl/datafile/mq.278.input datafile file number=00016 name=+DATA/orcl/datafile/mq.280.channel c3: starting piece 1 at 06-MAR-2019 11:34:03channel c4: starting compressed incremental level 0 datafile b

22、ackup setchannel c4: specifying datafile(s) in backup setinput datafile file number=00019 name=+DATA/orcl/datafile/ek_tool.283.input datafile file number=00010 name=+DATA/orcl/datafile/share_doc.274.input datafile file number=00013 name=+DATA/orcl/datafile/tsp_comm.277.input datafile file number=000

23、12 name=+DATA/orcl/datafile/kb.276.input datafile file number=00007 name=+DATA/orcl/datafile/tsp_monitor.271.input datafile file number=00008 name=+DATA/orcl/datafile/his.272.channel c4: starting piece 1 at 06-MAR-2019 11:34:03channel c3: finished piece 1 at 06-MAR-2019 11:53:38piece handle=/u01/bac

24、kup/db0_07troi9b_.bak tag=DB0 comment=NONEchannel c3: backup set complete, elapsed time: 00:19:35channel c3: starting compressed incremental level 0 datafile backup setchannel c3: specifying datafile(s) in backup setincluding current control file in backup setchannel c3: starting piece 1 at 06-MAR-2

25、019 11:53:40channel c3: finished piece 1 at 06-MAR-2019 11:53:41piece handle=/u01/backup/db0_09troje3_.bak tag=DB0 comment=NONEchannel c3: backup set complete, elapsed time: 00:00:01channel c3: starting compressed incremental level 0 datafile backup setchannel c3: specifying datafile(s) in backup se

26、tincluding current SPFILE in backup setchannel c3: starting piece 1 at 06-MAR-2019 11:53:41channel c3: finished piece 1 at 06-MAR-2019 11:53:42piece handle=/u01/backup/db0_0atroje5_.bak tag=DB0 comment=NONEchannel c3: backup set complete, elapsed time: 00:00:01channel c4: finished piece 1 at 06-MAR-

27、2019 11:54:36piece handle=/u01/backup/db0_08troi9b_.bak tag=DB0 comment=NONEchannel c4: backup set complete, elapsed time: 00:20:33channel c1: finished piece 1 at 06-MAR-2019 12:01:46piece handle=/u01/backup/db0_05troi9b_.bak tag=DB0 comment=NONEchannel c1: backup set complete, elapsed time: 00:27:4

28、3channel c2: finished piece 1 at 06-MAR-2019 12:01:56piece handle=/u01/backup/db0_06troi9b_.bak tag=DB0 comment=NONEchannel c2: backup set complete, elapsed time: 00:27:53Finished backup at 06-MAR-2019 12:01:562. 增量备份增量备份level1日志如下:RMAN> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11&g

29、t; 12> 13> using target database control file instead of recovery catalogallocated channel: c1channel c1: SID=2273 instance=orcl1 device type=DISKallocated channel: c2channel c2: SID=3782 instance=orcl1 device type=DISKallocated channel: c3channel c3: SID=4358 instance=orcl1 device type=DISKal

30、located channel: c4channel c4: SID=4732 instance=orcl1 device type=DISKStarting backup at 06-MAR-2019 12:25:56channel c1: starting compressed incremental level 1 datafile backup setchannel c1: specifying datafile(s) in backup setinput datafile file number=00017 name=+DATA/orcl/datafile/ek_tool.281.i

31、nput datafile file number=00021 name=+DATA/orcl/datafile/cdr.285.input datafile file number=00004 name=+DATA/orcl/datafile/undotbs2.264.input datafile file number=00005 name=+DATA/orcl/datafile/users.265.input datafile file number=00009 name=+DATA/orcl/datafile/mq.273.channel c1: starting piece 1 at

32、 06-MAR-2019 12:25:58channel c2: starting compressed incremental level 1 datafile backup setchannel c2: specifying datafile(s) in backup setinput datafile file number=00006 name=+DATA/orcl/datafile/ek_tool.270.input datafile file number=00020 name=+DATA/orcl/datafile/cdr.284.input datafile file numb

33、er=00001 name=+DATA/orcl/datafile/system.260.input datafile file number=00015 name=+DATA/orcl/datafile/mq.279.input datafile file number=00011 name=+DATA/orcl/datafile/cdr.275.channel c2: starting piece 1 at 06-MAR-2019 12:25:58channel c3: starting compressed incremental level 1 datafile backup setc

34、hannel c3: specifying datafile(s) in backup setinput datafile file number=00018 name=+DATA/orcl/datafile/ek_tool.282.input datafile file number=00003 name=+DATA/orcl/datafile/undotbs1.262.input datafile file number=00002 name=+DATA/orcl/datafile/sysaux.261.input datafile file number=00022 name=+DATA

35、/orcl/datafile/mdr.286.input datafile file number=00014 name=+DATA/orcl/datafile/mq.278.input datafile file number=00016 name=+DATA/orcl/datafile/mq.280.channel c3: starting piece 1 at 06-MAR-2019 12:25:58channel c4: starting compressed incremental level 1 datafile backup setchannel c4: specifying d

36、atafile(s) in backup setinput datafile file number=00019 name=+DATA/orcl/datafile/ek_tool.283.input datafile file number=00010 name=+DATA/orcl/datafile/share_doc.274.input datafile file number=00013 name=+DATA/orcl/datafile/tsp_comm.277.input datafile file number=00012 name=+DATA/orcl/datafile/kb.27

37、6.input datafile file number=00007 name=+DATA/orcl/datafile/tsp_monitor.271.input datafile file number=00008 name=+DATA/orcl/datafile/his.272.channel c4: starting piece 1 at 06-MAR-2019 12:25:59channel c1: finished piece 1 at 06-MAR-2019 12:29:44piece handle=/u01/backup/db1_0gtrolam_.bak tag=DB1 com

38、ment=NONEchannel c1: backup set complete, elapsed time: 00:03:46channel c1: starting compressed incremental level 1 datafile backup setchannel c1: specifying datafile(s) in backup setchannel c2: finished piece 1 at 06-MAR-2019 12:29:44piece handle=/u01/backup/db1_0htrolam_.bak tag=DB1 comment=NONEch

39、annel c2: backup set complete, elapsed time: 00:03:46channel c2: starting compressed incremental level 1 datafile backup setchannel c2: specifying datafile(s) in backup setincluding current SPFILE in backup setchannel c2: starting piece 1 at 06-MAR-2019 12:29:45channel c4: finished piece 1 at 06-MAR

40、-2019 12:29:45piece handle=/u01/backup/db1_0jtrolam_.bak tag=DB1 comment=NONEchannel c4: backup set complete, elapsed time: 00:03:46including current control file in backup setchannel c1: starting piece 1 at 06-MAR-2019 12:29:46channel c2: finished piece 1 at 06-MAR-2019 12:29:46piece handle=/u01/ba

41、ckup/db1_0ltrolho_.bak tag=DB1 comment=NONEchannel c2: backup set complete, elapsed time: 00:00:02channel c1: finished piece 1 at 06-MAR-2019 12:29:47piece handle=/u01/backup/db1_0ktrolho_.bak tag=DB1 comment=NONEchannel c1: backup set complete, elapsed time: 00:00:01channel c3: finished piece 1 at

42、06-MAR-2019 12:29:47piece handle=/u01/backup/db1_0itrolam_.bak tag=DB1 comment=NONEchannel c3: backup set complete, elapsed time: 00:03:49Finished backup at 06-MAR-2019 12:29:473. 备份检查手工检查备份结果:RMAN> list backup summary;List of Backups=Key TY LV S Device Type Completion Time #Pieces #Copies Compre

43、ssed Tag- - - - - - - - - -1 B 0 A DISK 06-MAR-2019 11:53:31 1 1 YES DB02 B 0 A DISK 06-MAR-2019 11:53:40 1 1 YES DB03 B 0 A DISK 06-MAR-2019 11:53:41 1 1 YES DB04 B 0 A DISK 06-MAR-2019 11:54:30 1 1 YES DB05 B 0 A DISK 06-MAR-2019 12:01:44 1 1 YES DB06 B 0 A DISK 06-MAR-2019 12:01:50 1 1 YES DB07 B

44、 A A DISK 06-MAR-2019 12:15:07 1 1 YES TAGT8 B A A DISK 06-MAR-2019 12:17:28 1 1 YES TAGT9 B A A DISK 06-MAR-2019 12:20:17 1 1 YES TAGT10 B A A DISK 06-MAR-2019 12:20:29 1 1 YES TAGT11 B 1 A DISK 06-MAR-2019 12:29:35 1 1 YES DB112 B 1 A DISK 06-MAR-2019 12:29:37 1 1 YES DB113 B 1 A DISK 06-MAR-2019

45、12:29:41 1 1 YES DB114 B 1 A DISK 06-MAR-2019 12:29:45 1 1 YES DB115 B 1 A DISK 06-MAR-2019 12:29:46 1 1 YES DB116 B 1 A DISK 06-MAR-2019 12:29:47 1 1 YES DB1RMAN>七、 数据库恢复定期的恢复演练,可以定期校验rman备份的可用性,还有助于运维人员熟悉掌握基本的恢复步骤,帮组运维人员在数据库出现故障的时候能快速熟练进行数据库的恢复.由于生产数据库正在使用,我们这里模拟生产库故障,进行rman集合的异地恢复.下面模拟在linux操作

46、系统下从rac数据库恢复到单实例的异机恢复.下面模拟进行恢复步骤:1. 拷贝备份集拷贝所有的备份文件,包括level0、level1和归档日志的备份,拷贝的目录可用和原来的备份的时候的目录一致,也可以不一致2. 恢复参数文件还原spfile,使用nomount打开数据库先编辑一个最简单的pfile,只有db_name即可:oraclebre2 dbs$ cat initbre1.ora db_name=bre1然后就可以nomount打开数据库了:SQL> startup nomount;ORACLE instance started. Total System Global Area

47、bytesFixed Size bytesVariable Size bytesDatabase Buffers bytesRedo Buffers bytesSQL> 再使用rman来恢复spfile:RMAN> restore spfile from '/home/oracle/backup/04pggb87_1_1.bak' Starting restore at 21-AUG-2014 9:39:31using target database control file instead of recovery catalogallocated channel:

48、 ORA_DISK_1channel ORA_DISK_1: SID=171 device type=DISK channel ORA_DISK_1: restoring spfile from AUTOBACKUP /home/oracle/backup/04pggb87_1_1.bakchannel ORA_DISK_1: SPFILE restore from AUTOBACKUP completeFinished restore at 21-AUG-2014 9:39:32 RMAN> 使用spfile来打理数据库试试oraclebre2 $ sqlplus / as sysdb

49、a SQL*Plus: Release 11.2.0.4.0 Production on Thu Aug 21 10:08:01 2014 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup nomount;ORA-01078: failure in processing system parametersLRM-00109: could not open parameter file '/u01/app/oracle/product/

50、11.2.0/db_1/dbs/initbre1.ora'SQL> startup nomount;ORA-01078: failure in processing system parametersLRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db_1/dbs/initbre1.ora'SQL> startup nomount;ORA-09925: Unable to create audit trail fileLinux-x86_64 Error: 2:

51、 No such file or directoryAdditional information: 9925有很多相关目录没有创建,可以使用strings spfilebre1.ora来查看一下spfile里面的内容,建好相关的目录,并且赋予权限,这些都做好后nomount打开数据库不再报错。3. 恢复控制文件登陆到rman,控制文件还原的时候将还原到参数文件指定的位置,所以参数文件指定的控制文件目录必须存在,否则报错: RMAN> restore controlfile from '/home/oracle/04pggb87_1_1.bak' Starting rest

52、ore at 21-AUG-2014 10:27:24using channel ORA_DISK_1 channel ORA_DISK_1: restoring control filechannel ORA_DISK_1: restore complete, elapsed time: 00:00:01output file name=/u01/app/oracle/oradata/bre1/control01.ctloutput file name=/u01/app/oracle/fast_recovery_area/bre1/control02.ctlFinished restore

53、at 21-AUG-2014 10:27:254. 异机注册备份集重启数据库,直接就可以启动到mountSQL> startup mount;ORACLE instance started. Total System Global Area bytesFixed Size bytesVariable Size bytesDatabase Buffers bytesRedo Buffers bytesDatabase mounted.SQL> 如果此时备份集所在文件目录改变,需要手工catalog注册备份集,这里我们将拷过来的备份文件复制到/home/oracle/backup下,演

54、示一下手工catalog备份集oraclebre2 $ ls03pggb7o_1_1.bak 04pggb87_1_1.bak pfile.ora testoraclebre2 $ mkdir backuporaclebre2 $ mv *.bak backuporaclebre2 $ ls backup03pggb7o_1_1.bak 04pggb87_1_1.bak RMAN> catalog backuppiece '/home/oracle/backup/03pggb7o_1_1.bak' Starting implicit crosscheck backup a

55、t 21-AUG-2014 10:32:10using target database control file instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: SID=10 device type=DISKCrosschecked 1 objectsFinished implicit crosscheck backup at 21-AUG-2014 10:32:10 Starting implicit crosscheck copy at 21-AUG-2014 10:32:10using channel ORA_DISK_1Finished implicit crosscheck copy at 21-AUG-2014 10:32:11 searching for all files in the recovery areacataloging files.no files cataloged cataloged backup piecebackup piece handle=/home/oracle/backup/03pggb7o_1_1.ba

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论