0 说明
本例是基于备份数据库全库的基础上,还原参数据文件(spfile),控制文件。
1 准备
[[email protected] /]$ sqlplus /nolog SQL*Plus: Release 11.2.0.3.0 Production on Mon Oct 12 11:58:35 2015 Copyright (c) 1982, 2011, Oracle. All rights reserved. SQL> conn sys/Sina.2015@study as sysdba Connected. SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination /data2/orcl/recover_log/archive_log Oldest online log sequence 22 Next log sequence to archive 24 Current log sequence 24
1.1检查数据库归档状态
[[email protected] ~]$ rman target sys/Sina.2015@study
1.2RMAN登陆目标
2 备份数据库
通常默认在/u01/app/oracle/fast_recovery_area/ORCL/ ,若需要特定指定备份数据存储位置时,可以创建备份数据库存储的目录。
[[email protected] /]$ mkdir /data2/backup
2.1创建备份数据存储目录
RMAN> backup as compressed backupset database plus archivelog; Starting backup at 12-OCT-15 current log archived using channel ORA_DISK_1 using channel ORA_DISK_2 using channel ORA_DISK_3 channel ORA_DISK_1: starting compressed archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=12 RECID=1 STAMP=892728339 input archived log thread=1 sequence=13 RECID=2 STAMP=892736557 input archived log thread=1 sequence=14 RECID=3 STAMP=892753270 input archived log thread=1 sequence=15 RECID=4 STAMP=892768262 channel ORA_DISK_1: starting piece 1 at 12-OCT-15 channel ORA_DISK_2: starting compressed archived log backup set channel ORA_DISK_2: specifying archived log(s) in backup set input archived log thread=1 sequence=16 RECID=5 STAMP=892791995 input archived log thread=1 sequence=17 RECID=6 STAMP=892803633 input archived log thread=1 sequence=18 RECID=7 STAMP=892815402 input archived log thread=1 sequence=19 RECID=8 STAMP=892828012 input archived log thread=1 sequence=20 RECID=9 STAMP=892843267 channel ORA_DISK_2: starting piece 1 at 12-OCT-15 channel ORA_DISK_3: starting compressed archived log backup set channel ORA_DISK_3: specifying archived log(s) in backup set input archived log thread=1 sequence=21 RECID=10 STAMP=892857631 input archived log thread=1 sequence=22 RECID=11 STAMP=892882839 input archived log thread=1 sequence=23 RECID=12 STAMP=892891106 input archived log thread=1 sequence=24 RECID=13 STAMP=892900945 input archived log thread=1 sequence=25 RECID=14 STAMP=892901057 input archived log thread=1 sequence=26 RECID=15 STAMP=892901228 input archived log thread=1 sequence=27 RECID=16 STAMP=892901372 input archived log thread=1 sequence=28 RECID=17 STAMP=892901532 channel ORA_DISK_3: starting piece 1 at 12-OCT-15 channel ORA_DISK_3: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_annnn_TAG20151012T145139_c1pp3xr2_.bkp tag=TAG20151012T145139 comment=NONE channel ORA_DISK_3: backup set complete, elapsed time: 00:00:15 channel ORA_DISK_3: starting compressed archived log backup set channel ORA_DISK_3: specifying archived log(s) in backup set input archived log thread=1 sequence=29 RECID=18 STAMP=892901677 input archived log thread=1 sequence=30 RECID=19 STAMP=892909146 input archived log thread=1 sequence=31 RECID=20 STAMP=892909170 input archived log thread=1 sequence=32 RECID=21 STAMP=892909211 input archived log thread=1 sequence=33 RECID=22 STAMP=892911098 channel ORA_DISK_3: starting piece 1 at 12-OCT-15 channel ORA_DISK_1: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_annnn_TAG20151012T145139_c1pp3wp6_.bkp tag=TAG20151012T145139 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:20 channel ORA_DISK_2: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_annnn_TAG20151012T145139_c1pp3ww1_.bkp tag=TAG20151012T145139 comment=NONE channel ORA_DISK_2: backup set complete, elapsed time: 00:00:22 channel ORA_DISK_3: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_annnn_TAG20151012T145139_c1pp4hhj_.bkp tag=TAG20151012T145139 comment=NONE channel ORA_DISK_3: backup set complete, elapsed time: 00:00:06 Finished backup at 12-OCT-15 Starting backup at 12-OCT-15 using channel ORA_DISK_1 using channel ORA_DISK_2 using channel ORA_DISK_3 channel ORA_DISK_1: starting compressed full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=/data2/orcl/system01.dbf input datafile file number=00003 name=/data2/orcl/undotbs01.dbf channel ORA_DISK_1: starting piece 1 at 12-OCT-15 channel ORA_DISK_2: starting compressed full datafile backup set channel ORA_DISK_2: specifying datafile(s) in backup set input datafile file number=00002 name=/data2/orcl/sysaux01.dbf input datafile file number=00004 name=/data2/orcl/users01.dbf channel ORA_DISK_2: starting piece 1 at 12-OCT-15 channel ORA_DISK_2: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_nnndf_TAG20151012T145203_c1pp4phv_.bkp tag=TAG20151012T145203 comment=NONE channel ORA_DISK_2: backup set complete, elapsed time: 00:00:55 channel ORA_DISK_1: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_nnndf_TAG20151012T145203_c1pp4o7j_.bkp tag=TAG20151012T145203 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:01:16 Finished backup at 12-OCT-15 Starting backup at 12-OCT-15 current log archived using channel ORA_DISK_1 using channel ORA_DISK_2 using channel ORA_DISK_3 channel ORA_DISK_1: starting compressed archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=34 RECID=23 STAMP=892911204 channel ORA_DISK_1: starting piece 1 at 12-OCT-15 channel ORA_DISK_1: finished piece 1 at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/backupset/2015_10_12/o1_mf_annnn_TAG20151012T145325_c1pp76vh_.bkp tag=TAG20151012T145325 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07 Finished backup at 12-OCT-15 Starting Control File and SPFILE Autobackup at 12-OCT-15 piece handle=/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2015_10_12/o1_mf_s_892911216_c1pp7o9p_.bkp comment=NONE Finished Control File and SPFILE Autobackup at 12-OCT-15
2.2RMAN备份全库
模拟数据库崩溃,删除控制文件,此时数据库还在继续运行,可能要过一会切换日志崩溃。这里我直接重启一下数据库
[[email protected] orcl]$ cd /data2/orcl [[email protected] orcl]$ ll 总用量 1666384 -rw-r----- 1 oracle oinstall 9748480 10月 12 15:15 control01.ctl drwxr-xr-x 3 oracle oinstall 4096 10月 10 10:48 recover_log -rw-r----- 1 oracle oinstall 52429312 10月 12 14:53 redo01.log -rw-r----- 1 oracle oinstall 52429312 10月 12 15:08 redo02.log -rw-r----- 1 oracle oinstall 52429312 10月 12 15:15 redo03.log -rw-r----- 1 oracle oinstall 681582592 10月 12 15:14 sysaux01.dbf -rw-r----- 1 oracle oinstall 754982912 10月 12 15:14 system01.dbf -rw-r----- 1 oracle oinstall 30416896 10月 12 14:33 temp01.dbf -rw-r----- 1 oracle oinstall 94380032 10月 12 15:15 undotbs01.dbf -rw-r----- 1 oracle oinstall 5251072 10月 12 15:13 users01.dbf [[email protected] orcl]$ mv control01.ctl control01.ctl.bak [[email protected] orcl]$ ll 总用量 1666384 -rw-r----- 1 oracle oinstall 9748480 10月 12 15:15 control01.ctl.bak drwxr-xr-x 3 oracle oinstall 4096 10月 10 10:48 recover_log -rw-r----- 1 oracle oinstall 52429312 10月 12 14:53 redo01.log -rw-r----- 1 oracle oinstall 52429312 10月 12 15:08 redo02.log -rw-r----- 1 oracle oinstall 52429312 10月 12 15:15 redo03.log -rw-r----- 1 oracle oinstall 681582592 10月 12 15:15 sysaux01.dbf -rw-r----- 1 oracle oinstall 754982912 10月 12 15:14 system01.dbf -rw-r----- 1 oracle oinstall 30416896 10月 12 14:33 temp01.dbf -rw-r----- 1 oracle oinstall 94380032 10月 12 15:15 undotbs01.dbf -rw-r----- 1 oracle oinstall 5251072 10月 12 15:13 users01.dbf SQL> startup force ORACLE instance started. Total System Global Area 1937457152 bytes Fixed Size 2229584 bytes Variable Size 1241516720 bytes Database Buffers 687865856 bytes Redo Buffers 5844992 bytes ORA-00205: error in identifying control file, check alert log for more info
2.3试验(模拟删除控制文件)
3 还原与恢复
$ORACLE_SID查看原来的SID。这里是假设原来$ORACLE_SID没设置的情况下: [[email protected] ~]$ export ORACLE_SID=test [[email protected] ~]$ echo $ORACLE_SID test [[email protected] ~]$ rman target / Recovery Manager: Release 11.2.0.3.0 - Production on Mon Oct 12 15:45:22 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database (not started) RMAN> startup nomount startup failed: ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file ‘/u01/app/oracle/product/11.2.0/db_1/dbs/inittest.ora‘ starting Oracle instance without parameter file for retrieval of spfile Oracle instance started Total System Global Area 158662656 bytes Fixed Size 2226456 bytes Variable Size 130025192 bytes Database Buffers 20971520 bytes Redo Buffers 5439488 bytes 此时查看下[[email protected] orcl]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs/ 中产生的文件: [[email protected] dbs]$ ll 总用量 9540 -rw-rw---- 1 oracle oinstall 1544 10月 12 15:18 hc_orcl.dat -rw-r--r-- 1 oracle oinstall 2851 5月 15 2009 init.ora -rw-r----- 1 oracle oinstall 0 10月 12 15:45 lkinsttest -rw-r----- 1 oracle oinstall 24 10月 9 11:53 lkORCL -rw-r----- 1 oracle oinstall 1536 10月 9 12:02 orapworcl -rw-r----- 1 oracle oinstall 9748480 10月 12 14:53 snapcf_orcl.f -rw-r----- 1 oracle oinstall 2560 10月 12 09:18 spfileorcl.ora
3.1假定没有设置Oracle_SID,设置Oracle_SID启动一个伪实例
从数据库备份集中还原spfile
RMAN> restore spfile from ‘/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2015_10_12/o1_mf_s_892911216_c1pp7o9p_.bkp‘; Starting restore at 12-OCT-15 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=429 device type=DISK channel ORA_DISK_1: restoring spfile from AUTOBACKUP /u01/app/oracle/fast_recovery_area/ORCL/autobackup/2015_10_12/o1_mf_s_892911216_c1pp7o9p_.bkp channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete Finished restore at 12-OCT-15 此时参数文件恢复完成,此时,在DBS目录下有一个以当前oracle_sid.ora为后缀的参数文件: [[email protected] dbs]$ ll 总用量 9548 -rw-rw---- 1 oracle oinstall 1544 10月 12 15:18 hc_orcl.dat -rw-rw---- 1 oracle oinstall 1544 10月 12 15:47 hc_test.dat -rw-r--r-- 1 oracle oinstall 2851 5月 15 2009 init.ora -rw-r----- 1 oracle oinstall 24 10月 9 11:53 lkORCL -rw-r----- 1 oracle oinstall 1536 10月 9 12:02 orapworcl -rw-r----- 1 oracle oinstall 9748480 10月 12 14:53 snapcf_orcl.f -rw-r----- 1 oracle oinstall 2560 10月 12 09:18 spfileorcl.ora -rw-r----- 1 oracle oinstall 2560 10月 12 15:47 spfiletest.ora
3.2还原spfile
从数据库备份集中还原控制文件
停掉伪实例,还原原来的参数文件名,原来是ORACLE_SID=orcl RMAN> shutdown immediate Oracle instance shut down [[email protected] dbs]$ mv spfiletest.ora spfileorcl.ora [[email protected] dbs]$ ll 总用量 9544 -rw-rw---- 1 oracle oinstall 1544 10月 12 15:18 hc_orcl.dat -rw-rw---- 1 oracle oinstall 1544 10月 12 16:08 hc_test.dat -rw-r--r-- 1 oracle oinstall 2851 5月 15 2009 init.ora -rw-r----- 1 oracle oinstall 24 10月 9 11:53 lkORCL -rw-r----- 1 oracle oinstall 1536 10月 9 12:02 orapworcl -rw-r----- 1 oracle oinstall 9748480 10月 12 14:53 snapcf_orcl.f -rw-r----- 1 oracle oinstall 2560 10月 12 15:47 spfileorcl.ora 还原控制文件: [[email protected] ~]$ export ORACLE_SID=orcl [[email protected] ~]$ rman target / Recovery Manager: Release 11.2.0.3.0 - Production on Mon Oct 12 16:16:03 2015 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database (not started) RMAN> startup nomount Oracle instance started Total System Global Area 1937457152 bytes Fixed Size 2229584 bytes Variable Size 1241516720 bytes Database Buffers 687865856 bytes Redo Buffers 5844992 bytes RMAN> restore controlfile from ‘/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2015_10_12/o1_mf_s_892911216_c1pp7o9p_.bkp‘; Starting restore at 12-OCT-15 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=63 device type=DISK channel ORA_DISK_1: restoring control file channel ORA_DISK_1: restore complete, elapsed time: 00:00:03 output file name=/data2/orcl/control01.ctl output file name=/u01/app/oracle/fast_recovery_area/orcl/control02.ctl Finished restore at 12-OCT-15
3.3还原控制文件
RMAN> alter database mount; database mounted RMAN> alter database open;
3.4打开数据库
时间: 2024-10-12 16:13:04