將Oracle 10g RAC庫用rman 的方式備份並恢復到異機單機 -2

season0891發表於2010-07-29
--列出備份的archivelog:
RMAN> list backup of archivelog all;

using target database control file instead of recovery catalog

List of Backup Sets
===================

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
89      2.44M      DISK        00:00:03     02-NOV-08     
        BP Key: 89   Status: AVAILABLE  Compressed: NO  Tag: TAG20081102T231211
        Piece Name: /rmanset/RACDB_arch_98_1_2

  List of Archived Logs in backup set 89
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    53      356353     02-NOV-08 396535     02-NOV-08
  1    54      396535     02-NOV-08 398232     02-NOV-08
  2    44      350717     02-NOV-08 356350     02-NOV-08
  2    45      356350     02-NOV-08 376487     02-NOV-08
  2    46      376487     02-NOV-08 396536     02-NOV-08
  2    47      396536     02-NOV-08 397820     02-NOV-08
  2    48      397820     02-NOV-08 398228     02-NOV-08
  2    49      398228     02-NOV-08 398963     02-NOV-08

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
90      17.42M     DISK        00:00:07     02-NOV-08     
        BP Key: 90   Status: AVAILABLE  Compressed: NO  Tag: TAG20081102T231211
        Piece Name: /rmanset/RACDB_arch_97_1_1

  List of Archived Logs in backup set 90
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    42      285767     01-NOV-08 285925     01-NOV-08
  1    44      286441     01-NOV-08 286516     01-NOV-08
  1    45      286516     01-NOV-08 308174     01-NOV-08
  1    46      308174     01-NOV-08 312441     01-NOV-08
  1    47      312441     01-NOV-08 324657     02-NOV-08

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ ---------------
91      9.69M      DISK        00:00:04     02-NOV-08     
        BP Key: 91   Status: AVAILABLE  Compressed: NO  Tag: TAG20081102T231211
        Piece Name: /rmanset/RACDB_arch_99_1_1

  List of Archived Logs in backup set 91
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    48      324657     02-NOV-08 324727     02-NOV-08
  1    49      324727     02-NOV-08 325613     02-NOV-08
  1    50      325613     02-NOV-08 349040     02-NOV-08
  1    51      349040     02-NOV-08 350714     02-NOV-08
  1    52      350714     02-NOV-08 356353     02-NOV-08
  1    55      398232     02-NOV-08 398433     02-NOV-08
  1    56      398433     02-NOV-08 398960     02-NOV-08
 
 
--restore archivelog and recover database. 

RMAN>

RMAN> run{
2> set archivelog destination to '/racdb_arch';
3> restore archivelog from sequence 49 thread 2;
}4>

executing command: SET ARCHIVELOG DESTINATION

Starting restore at 02-NOV-08
using channel ORA_DISK_1

channel ORA_DISK_1: starting archive log restore to user-specified destination
archive log destination=/racdb_arch
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=49
channel ORA_DISK_1: reading from backup piece /rmanset/RACDB_arch_98_1_2
channel ORA_DISK_1: restored backup piece 1
piece handle=/rmanset/RACDB_arch_98_1_2 tag=TAG20081102T231211
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
Finished restore at 02-NOV-08

RMAN>

RMAN>

RMAN> run{
2> set archivelog destination to '/racdb_arch';
3> restore archivelog from sequence 44 thread 2;
4> }

executing command: SET ARCHIVELOG DESTINATION

Starting restore at 02-NOV-08
using channel ORA_DISK_1

archive log thread 2 sequence 49 is already on disk as file /racdb_arch/2_49_669487401.dbf
channel ORA_DISK_1: starting archive log restore to user-specified destination
archive log destination=/racdb_arch
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=44
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=45
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=46
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=47
channel ORA_DISK_1: restoring archive log
archive log thread=2 sequence=48
channel ORA_DISK_1: reading from backup piece /rmanset/RACDB_arch_98_1_2
channel ORA_DISK_1: restored backup piece 1
piece handle=/rmanset/RACDB_arch_98_1_2 tag=TAG20081102T231211
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
Finished restore at 02-NOV-08

RMAN> run{
2> set until sequence 57 thread 1;
3> recover database;
4> }

executing command: SET until clause

Starting recover at 02-NOV-08
using channel ORA_DISK_1

starting media recovery

archive log thread 2 sequence 49 is already on disk as file /racdb_arch/2_49_669487401.dbf
channel ORA_DISK_1: starting archive log restore to default destination
channel ORA_DISK_1: restoring archive log
archive log thread=1 sequence=56
channel ORA_DISK_1: reading from backup piece /rmanset/RACDB_arch_99_1_1
channel ORA_DISK_1: restored backup piece 1
piece handle=/rmanset/RACDB_arch_99_1_1 tag=TAG20081102T231211
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
archive log filename=/racdb_arch/1_56_669487401.dbf thread=1 sequence=56
archive log filename=/racdb_arch/2_49_669487401.dbf thread=2 sequence=49
media recovery complete, elapsed time: 00:00:01
Finished recover at 02-NOV-08


--對redo 作修改:

                                                                                                            
 alter database rename file '+RACDATA/racdb/onlinelog/group_1.257.669487411' to '/oradata/racdb/redo1';     
 alter database rename file '+RACDATA/racdb/onlinelog/group_2.258.669487419' to '/oradata/racdb/redo2';     
 alter database rename file '+RACDATA/racdb/onlinelog/group_3.265.669489319' to '/oradata/racdb/redo3';     
 alter database rename file '+RACDATA/racdb/onlinelog/group_4.266.669489327' to '/oradata/racdb/redo4';     


SQL>  select member from v$logfile;                                                                       
                                                                                                          
MEMBER                                                                                                   
--------------------------------------------------------------------------------                         
+RACDATA/racdb/onlinelog/group_1.257.669487411                                                                                                         
+RACDATA/racdb/onlinelog/group_2.258.669487419                                                                                                         
+RACDATA/racdb/onlinelog/group_3.265.669489319                                                                                                         
+RACDATA/racdb/onlinelog/group_4.266.669489327                                                           
                                                                                                          
SQL> alter database rename file '+RACDATA/racdb/onlinelog/group_1.257.669487411' to '/oradata/racdb/redo1';
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL> alter database rename file '+RACDATA/racdb/onlinelog/group_2.258.669487419' to '/oradata/racdb/redo2';
alter database rename file '+RACDATA/racdb/onlinelog/group_3.265.669489319' to '/oradata/racdb/redo3';    
alter database rename file '+RACDATA/racdb/onlinelog/group_4.266.669489327' to '/oradata/racdb/redo4';    
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL>                                                                                                      
Database altered.                                                                                         
                                                                                                          
SQL>                                                                                                      
Database altered.                                                                                         
                                                                                                          
SQL> alter database open resetlogs;                                                                       
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL>                                                                                                      
SQL>                                                                                                      
SQL>                                                                                                      
SQL>  select THREAD#, STATUS, ENABLED from v$thread;                                                      
                                                                                                          
   THREAD# STATUS ENABLED                                                                                 
---------- ------ --------                                                                                
         1 OPEN   PUBLIC                                                                                  
         2 CLOSED PUBLIC                                                                                  
                                                                                                          
                                                                                                    
SQL>                                                                                                      
SQL> select group# from v$log where THREAD#=2;                                                            
                                                                                                          
    GROUP#                                                                                                
----------                                                                                                
         3                                                                                                
         4                                                                                                
                                                                                                          
SQL> alter database disable thread 2;                                                                     
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL> alter database drop logfile group 4;                                                                 
alter database drop logfile group 4                                                                       
*                                                                                                         
ERROR at line 1:                                                                                          
ORA-00350: log 4 of instance racdb2 (thread 2) needs to be archived                                       
ORA-00312: online log 4 thread 2: '/oradata/racdb/redo4'                                                  
                                                                                                          
                                                                                                          
SQL> alter database clear unarchived logfile group 3;                                                     
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL> alter database drop logfile group 3;                                                                 
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL> alter database drop logfile group 4;                                                                 
alter database drop logfile group 4                                                                       
*                                                                                                         
ERROR at line 1:                                                                                          
ORA-00350: log 4 of instance racdb2 (thread 2) needs to be archived                                       
ORA-00312: online log 4 thread 2: '/oradata/racdb/redo4'                                                  
                                                                                                          
                                                                                                          
SQL> alter database clear unarchived logfile group 4;                                                     
                                                                                                          
Database altered.                                                                                         
                                                                                                          
SQL>  alter database drop logfile group 4;                                                                
                                                                                                          
Database altered.                                                                                         
                                                                                                          
                                                                                                      
SQL> select group#,member from v$logfile;                                                                 
                                                                                                          
    GROUP#                                                                                                
----------                                                                                                
MEMBER                                                                                                    
--------------------------------------------------------------------------------                          
         1                                                                                                
/oradata/racdb/redo1                                                                                      
                                                                                                          
         2                                                                                                
/oradata/racdb/redo2                         

SQL> select THREAD#, STATUS, ENABLED from v$thread;                                                            
                                                  
   THREAD# STATUS ENABLED                         
---------- ------ --------                        
         1 OPEN   PUBLIC         
        
        
對undo 的處理:        

SQL> show parameter undo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS1
SQL> select tablespace_name from dba_tablespaces where contents='UNDO';

TABLESPACE_NAME
------------------------------
UNDOTBS1
UNDOTBS2

SQL> drop tablespace UNDOTBS2 including contents and datafiles;

Tablespace dropped.

SQL>  select tablespace_name from dba_tablespaces where contents='UNDO';

TABLESPACE_NAME
------------------------------
UNDOTBS1

SQL>                 



對temp的處理:

 create temporary tablespace TEMP1  tempfile '/oradata/racdb/temp01.dbf'  size 50M autoextend off;
 
SQL>  select name from v$tempfile;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-669740/,如需轉載,請註明出處,否則將追究法律責任。

相關文章