1、资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。 Oracle 10g RAC环境Rman备份恢复至单机oracle10g方案 说明: 使用于oracle 10g ,备份环境是RAC, 可是恢复目的环境是单机。 l 创立与rac主机相同的目录 如/backup/rmanbak/level0/ /4 都是在压缩包所在的目录下tar -cvf oracle0208.tar oracle tar -xvf oracle0113.tar l 传输rac上的备份集到单机上 节点2上的备份包含数据文件及归档 的备份集 scp dblv0_
2、731_1_ :/backup/rmanbak/level0/ /4 scp dblv0_732_1_ :/backup/rmanbak/level0/ /4 scp dblv0_733_1_ :/backup/rmanbak/level0/ /4 过程如下: 文件大致需要传输6分钟 节点1上传输控制文件的备份在( 注意不是节点2上 的控制文件的备份) 测试机上接收到的备份集 注意更改这些文件的属性 chown -R oracle:dba * l 测试机上创立pfile及相关目录 *.audit_file_dest='/app/oracle/admin
3、/orcl/adump' *.background_dump_dest='/app/oracle/admin/orcl/bdump' *.compatible='10.2.0.1.0' *.control_files='/oradata/orcl/controlfile1.ctl','/oradata/orcl/controlfile2.ctl','/oradata/orcl/controlfile3.ctl' *.core_dump_dest='/app/oracle/admin/orcl/cdump' *.db_block_size=8192 *.db_domain=''
4、 *.db_file_multiblock_read_count=16 *.db_name='orcl' *.dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLDB)' *.job_queue_processes=10 *.log_archive_dest_1='LOCATION=/archive/orcl' *.log_archive_format='%t_%s_%r.dbf' *.open_cursors=1000 *.pga_aggregate_target= *.processes=1500 *.remote_login_pas
5、swordfile='EXCLUSIVE' *.sessions=1655 *.sga_target= *.undo_management='AUTO' *.undo_tablespace='UNDOTBS' *.user_dump_dest='/app/oracle/admin/orcl/udump' l 测试机上启动实例orcl, 并开始恢复数据文件 修改profile 改正ORACLE_SID=orcl; export ORACLE_SID 使ORACLE_SID=orcl进入到该orcl的实例, 以pfile启动的 进入到rman中 注意应该是 re
6、store controlfile from '/backup/rmanbak/level0/ /4/controlfile_c-- 0209-01'; 使其进入mount状态 查看数据文件 一些命令的查看 设置export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss' list backup summary; RMAN> list backup of archivelog all summary; RMAN> list backup of archivelog all; 注意只有516和518备份集中有2月9日备份的
7、归档 注意恢复的时候 能够用 RMAN> restore database preview summary; 这个命令的速度很快! Restore过程, 为了加快速度, 因此使用了4个通道。本次开始的时间是11:37分。耗时约2小时 run{ allocate channel c1 device type disk; allocate channel c2 device type disk; allocate channel c3 device type disk; allocate channel c4 device type disk; set newname f
8、or datafile 1 to '/oradata/orcl/system01.dbf'; set newname for datafile 2 to '/oradata/orcl/user02.dbf'; set newname for datafile 3 to '/oradata/orcl/sysaux01.dbf'; set newname for datafile 4 to '/oradata/orcl/users01.dbf'; set newname for datafile 5 to '/oradata/orcl/geostk_detail01.dbf';
9、 set newname for datafile 6 to '/oradata/orcl/geo 01.dbf'; set newname for datafile 7 to '/oradata/orcl/databxstkmdtl02.dbf'; set newname for datafile 8 to '/oradata/orcl/geo index03.dbf'; set newname for datafile 9 to '/oradata/orcl/geo 05.dbf'; set newname for datafile 10 to '/oradata/orcl
10、/databxsp01.dbf'; set newname for datafile 11 to '/oradata/orcl/databxbatch01.dbf'; set newname for datafile 12 to '/oradata/orcl/databxrob01.dbf'; set newname for datafile 13 to '/oradata/orcl/databxstkdtl01.dbf'; set newname for datafile 14 to '/oradata/orcl/databxaccdtl01.dbf'; set newname f
11、or datafile 15 to '/oradata/orcl/databxstkmdtl01.dbf'; set newname for datafile 16 to '/oradata/orcl/bxbb01.dbf'; set newname for datafile 17 to '/oradata/orcl/bxbb02.dbf'; set newname for datafile 18 to '/oradata/orcl/geo 02.dbf'; set newname for datafile 19 to '/oradata/orcl/geo 03.dbf'; set
12、newname for datafile 20 to '/oradata/orcl/geo index01.dbf'; set newname for datafile 21 to '/oradata/orcl/geo index02.dbf'; set newname for datafile 22 to '/oradata/orcl/undotbs02.dbf'; set newname for datafile 24 to '/oradata/orcl/geo 04.dbf'; set newname for datafile 25 to '/oradata/orcl/benet
13、z_todo01.dbf'; set newname for datafile 29 to '/oradata/orcl/undotbs1.dbf'; set newname for datafile 30 to '/oradata/orcl/undotbs2.dbf'; restore database; switch datafile all; release channel c1; release channel c2; release channel c3; release channel c4;} 关于归档 在list backup of arc
14、hivelog all ;中能够看到 BS Key 518中有2月9日备份的归档---- 这是1机的归档备份 1 1430 -02-09 01:24:13 -02-09 02:48:24 1 1431 -02-09 02:48:24 -02-09 02:48:48 BS Key 516中有2月9日备份的归档----这是2机的归档备份 2 744 -02-09 02:47:01 -02-09 02:47:23 根据上面的能够看到( 1,1431, ) ; ( 2,744, ) 因此选择2恢复
15、 RMAN> run{ set until sequence 745 thread 2; recover database; } 在SQL> select THREAD#,SEQUENCE#,NEXT_CHANGE#,name from v$archived_log 中查到 为了完全恢复, 则不使用上面的until了。 看节点1下的归档 为了最大限度的恢复 scp 1_143*.dbf :/archive/orcl scp 1_144*.dbf :/archive/orcl 将2.9日备份时间后的所有归档都考过了 恢复完后, 我建议先备份恢
16、复出来的数据文件夹 然后用 sqlplus 的recover 进行恢复 此时不能打开的! alter database rename file '+DG_DATA/orcl/onlinelog/redo06.log'to '/oradata/chunjierac/redo06.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo07.log'to '/oradata/chunjierac/redo07.log'; alter database rename file '+DG_DAT
17、A/orcl/onlinelog/redo01.log'to '/oradata/chunjierac/redo01.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo02.log'to '/oradata/chunjierac/redo02.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo03.log'to '/oradata/chunjierac/redo03.log'; alter database rename file '+DG_
18、DATA/orcl/onlinelog/redo04.log'to '/oradata/chunjierac/redo04.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo05.log'to '/oradata/chunjierac/redo05.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo8.log' to '/oradata/chunjierac/redo8.log'; alter database rename file '+D
19、G_DATA/orcl/onlinelog/redo9.log' to '/oradata/chunjierac/redo9.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo10.log'to '/oradata/chunjierac/redo10.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo11.log'to '/oradata/chunjierac/redo11.log'; alter database rename file '
20、DG_DATA/orcl/onlinelog/redo12.log'to '/oradata/chunjierac/redo12.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo13.log'to '/oradata/chunjierac/redo13.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo14.log'to '/oradata/chunjierac/redo14.log'; 查看下 SELECT a.group#, a.m
21、ember, b.bytes FROM v$logfile a, v$log b WHERE a.group# = b.group#; 后续操作 SQL> select THREAD#, STATUS, ENABLED from v$thread; SQL> alter database disable thread 2; SQL> select group# from v$log where THREAD#=2; 使用SQL> alter database drop logfile group **** 或者 SQL> alte
22、r database clear unarchived logfile group 9; SQL> select group#,member from v$logfile; 对undo 的处理: 它的redo比较特别, 一般的都是UNDOTBS2 和UNDOTBS1 SQL> drop tablespace UNDOTBS2 including contents and datafiles; SQL>select tablespace_name from dba_tablespaces where contents='UNDO'; 对temp的处理
23、 SQL> select name from v$tempfile; NAME -------------------------------------------------------------------------------- +DG_DATA/orcl/tempfile/temp02.dbf SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY'; TABLESPACE_NAME ------------------------------ TEMP S
24、QL> create temporary tablespace TEMP1 tempfile '/oradata/****/temp01.dbf' size 100M autoextend off; Tablespace created. SQL> alter database default temporary tablespace TEMP1; Database altered. SQL> drop tablespace TEMP including contents and datafiles; Tablespace dropped. SQL> sele
25、ct name from v$tempfile; NAME -------------------------------------------------------------------------------- /oradata/chunjierac/temp01.dbf 监听配置 orcl = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dg02)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818