12C RMAN 备份参考v1

windows bat

1,C:\dba\utility\rman\rman.bat

del C:\dba\utility\rman\full_db_* /q
set TNSNAME=ceipuat
rman target /@%TNSNAME% cmdfile=C:\dba\utility\rman\rman.cmd

2.C:\dba\utility\rman\rman.cmd

backup filesperset = 5 as compressed backupset database format 'C:\dba\utility\rman\full_db_%U'  plus archivelog  delete all input format 'C:\dba\utility\rman\full_db_arch_%U';

12C引进了pdb的概念,使得rman的恢复相对来说复杂了一些,这里对pdb的常规备份和恢复进行了简单测试,供大家参考

1.cdb启动和pdb关系测试

[oracle@xifenfei tmp]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.0.2
Beta on Wed Dec 12 23:48:02
2012

Copyright (c) 1982, 2012, Oracle. 
All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.0.2
- 64bit

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> startup

ORACLE instance started.

Total System Global Area  939495424 bytes

Fixed Size                 
2267128 bytes

Variable Size            
662702088 bytes

Database Buffers          268435456
bytes

Redo
Buffers               
6090752 bytes

Database mounted.

Database opened.

SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;

CON_ID      
DBID NAME                          
OPEN_MODE

---------- ----------
------------------------------ ----------

2
4043918109
PDB$SEED                      
READ ONLY

3
2346805300
LX1                           
MOUNTED

4
2385557792
LX2                           
MOUNTED

5
1565384817
FF                            
MOUNTED

SQL> alter pluggable database all open;

Pluggable database altered.

SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;

CON_ID      
DBID NAME                          
OPEN_MODE

---------- ----------
------------------------------ ----------

2
4043918109
PDB$SEED                      
READ ONLY

3
2346805300
LX1                           
READ WRITE

4
2385557792
LX2                           
READ WRITE

5
1565384817
FF                            
READ WRITE

证明直接startup cdb里面的pdb不会自动open,需要手工进行open

2.rman使用cdb备份数据库

[oracle@xifenfei ~]$ rman target /

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 21:36:08 2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights reserved.

connected to target database: xifenfei
(DBID=2412861330)

RMAN> backup filesperset = 5 as
compressed backupset database format '/tmp/full_db_%U';

Starting backup at 12-DEC-12

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=259 device
type=DISK

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=/u01/app/oracle/oradata/xifenfei/system01.dbf

input datafile file number=00010 name=/u01/app/oracle/oradata/xifenfei/LX2/system01.dbf

input datafile file number=00011 name=/u01/app/oracle/oradata/xifenfei/LX2/sysaux01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/full_db_06nsn3uq_1_1 tag=TAG20121212T213626 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

input datafile file number=00019 name=/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

input datafile file number=00005 name=/u01/app/oracle/oradata/xifenfei/undotbs01.dbf

input datafile file number=00007 name=/u01/app/oracle/oradata/xifenfei/LX1/system01.dbf

input datafile file number=00018
name=/u01/app/oracle/oradata/xifenfei/xffSAMPLE_SCHEMA_users01.dbf

input datafile file number=00008 name=/u01/app/oracle/oradata/xifenfei/LX1/sysaux01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/full_db_07nsn407_1_1 tag=TAG20121212T213626 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

input datafile file number=00017 name=/u01/app/oracle/oradata/xifenfei/xffsysaux01.dbf

input datafile file number=00002 name=/u01/app/oracle/oradata/xifenfei/pdbseed/system01.dbf

input datafile file number=00004 name=/u01/app/oracle/oradata/xifenfei/pdbseed/sysaux01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/full_db_08nsn41l_1_1 tag=TAG20121212T213626 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:01:15

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

input datafile file number=00003 name=/u01/app/oracle/oradata/xifenfei/sysaux01.dbf

input datafile file number=00016 name=/u01/app/oracle/oradata/xifenfei/xffsystem01.dbf

input datafile file number=00006 name=/u01/app/oracle/oradata/xifenfei/users01.dbf

input datafile file number=00009 name=/u01/app/oracle/oradata/xifenfei/LX1/LX1_users01.dbf

input datafile file number=00012 name=/u01/app/oracle/oradata/xifenfei/LX2/LX2_users01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/full_db_09nsn440_1_1 tag=TAG20121212T213626 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

including current control file in backup set

including current SPFILE in backup set

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/full_db_0ansn45d_1_1 tag=TAG20121212T213626 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01

Finished backup at 12-DEC-12

RMAN> list backup summary;

List of Backups

===============

Key     TY LV S Device Type
Completion Time #Pieces #Copies Compressed Tag

------- -- -- - -----------
--------------- ------- ------- ---------- ---

1      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213250

2      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213626

3      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213626

4      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213626

5      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213626

6      
B  F  A DISK       
12-DEC-12      
1       1      
YES        TAG20121212T213626

RMAN> report schema;

Report of database schema for database with db_unique_name xifenfei

List of Permanent Datafiles

===========================

File Size(MB)
Tablespace           RB
segs Datafile Name

---- --------
-------------------- ------- ------------------------

1   
700     
SYSTEM              
***     /u01/app/oracle/oradata/xifenfei/system01.dbf

2   
210      PDB$SEED:SYSTEM     
***    
/u01/app/oracle/oradata/xifenfei/pdbseed/system01.dbf

3   
550     
SYSAUX              
***     /u01/app/oracle/oradata/xifenfei/sysaux01.dbf

4   
165     
PDB$SEED:SYSAUX      ***    
/u01/app/oracle/oradata/xifenfei/pdbseed/sysaux01.dbf

5   
310     
UNDOTBS1            
***     /u01/app/oracle/oradata/xifenfei/undotbs01.dbf

6   
5       
USERS               
***     /u01/app/oracle/oradata/xifenfei/users01.dbf

7   
210     
LX1:SYSTEM          
***     /u01/app/oracle/oradata/xifenfei/LX1/system01.dbf

8   
165     
LX1:SYSAUX          
***     /u01/app/oracle/oradata/xifenfei/LX1/sysaux01.dbf

9   
5       
LX1:USERS           
***    
/u01/app/oracle/oradata/xifenfei/LX1/LX1_users01.dbf

10  
210     
LX2:SYSTEM          
***     /u01/app/oracle/oradata/xifenfei/LX2/system01.dbf

11  
165     
LX2:SYSAUX          
***     /u01/app/oracle/oradata/xifenfei/LX2/sysaux01.dbf

12  
5       
LX2:USERS           
***    
/u01/app/oracle/oradata/xifenfei/LX2/LX2_users01.dbf

16   270     
FF:SYSTEM           
***     /u01/app/oracle/oradata/xifenfei/xffsystem01.dbf

17  
570     
FF:SYSAUX           
***     /u01/app/oracle/oradata/xifenfei/xffsysaux01.dbf

18  
5       
FF:USERS            
***     /u01/app/oracle/oradata/xifenfei/xffSAMPLE_SCHEMA_users01.dbf

19  
341     
FF:EXAMPLE          
***     /u01/app/oracle/oradata/xifenfei/xffexample01.dbf

List of Temporary Files

=======================

File Size(MB)
Tablespace          
Maxsize(MB) Tempfile Name

---- --------
-------------------- ----------- --------------------

1   
530     
TEMP                
32767      
/u01/app/oracle/oradata/xifenfei/temp01.dbf

2   
20      
PDB$SEED:TEMP       
32767      
/u01/app/oracle/oradata/xifenfei/pdbseed/temp01.dbf

3   
20       LX1:TEMP            
32767      
/u01/app/oracle/oradata/xifenfei/LX1/temp01.dbf

4   
20      
LX2:TEMP            
32767      
/u01/app/oracle/oradata/xifenfei/LX2/temp01.dbf

5   
20      
FF:TEMP             
32767       /u01/app/oracle/oradata/xifenfei/xfftemp01.dbf

试验证明:通过rman通过cdb库的备份,可以实现对对应的cdb和所包含的pdb进行备份

3.配置pdb访问tns

[oracle@xifenfei ~]$ lsnrctl status

LSNRCTL for Linux: Version 12.1.0.0.2       
on 12-DEC-2012 22:33:27

Copyright (c) 1991, 2012, Oracle. 
All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=xifenfei)(PORT=1521)))

STATUS of the LISTENER

------------------------

Alias                    
LISTENER

Version                  
TNSLSNR for Linux: Version 12.1.0.0.2

Start
Date               
12-DEC-2012 22:31:55

Uptime                   
0 days 0 hr. 1 min. 32 sec

Trace
Level              
off

Security                 
ON: Local OS Authentication

SNMP                     
OFF

Listener Parameter File  
/u01/app/oracle/product/12.1/db_1/network/admin/listener.ora

Listener Log
File        
/u01/app/oracle/diag/tnslsnr/xifenfei/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xifenfei)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xifenfei)(PORT=5500))(Presentation=HTTP)(Session=RAW))

Services Summary...

Service "ff" has 1 instance(s).

Instance "xff",
status READY, has 1 handler(s) for this service...

Service "xifenfei" has 1 instance(s).

Instance "xff",
status READY, has 1 handler(s) for this service...

Service "lx1" has 1 instance(s).

Instance "xff",
status READY, has 1 handler(s) for this service...

Service "lx2" has 1 instance(s).

Instance "xff",
status READY, has 1 handler(s) for this service...

Service "xffXDB" has 1 instance(s).

Instance "xff",
status READY, has 1 handler(s) for this service...

The command completed successfully

[oracle@xifenfei admin]$ vi tnsnames.ora

lx1 =

(DESCRIPTION =

(ADDRESS =
(PROTOCOL = TCP)(HOST = xifenfei)(PORT = 1521))

(CONNECT_DATA =

(SERVER
= DEDICATED)

(SERVICE_NAME
= lx1)

)

)

ff =

(DESCRIPTION =

(ADDRESS =
(PROTOCOL = TCP)(HOST = xifenfei)(PORT = 1521))

(CONNECT_DATA =

(SERVER
= DEDICATED)

(SERVICE_NAME
= ff)

)

)

sqlplus访问pdb

[oracle@xifenfei admin]$ sqlplus sys@lx1
as sysdba

SQL*Plus: Release 12.1.0.0.2
Beta on Wed Dec 12 22:35:07
2012

Copyright (c) 1982, 2012, Oracle. 
All rights reserved.

Enter password:

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.0.2
- 64bit

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show con_name;

CON_NAME

------------------------------

LX1

SQL> create user xff identified by xifenfei;

User created.

SQL> GRANT SYSDBA TO XFF;

Grant succeeded.

4.rman备份pdb数据库

[oracle@xifenfei admin]$ rman target
xff/xifenfei@lx1

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 22:44:46 2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights reserved.

connected to target database: xifenfei
(DBID=2412861330)

RMAN> backup filesperset = 5 as
compressed backupset database format '/tmp/lx1_db_%U';

Starting backup at 12-DEC-12

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=256 device
type=DISK

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

input datafile file number=00007 name=/u01/app/oracle/oradata/xifenfei/LX1/system01.dbf

input datafile file number=00008 name=/u01/app/oracle/oradata/xifenfei/LX1/sysaux01.dbf

input datafile file number=00009 name=/u01/app/oracle/oradata/xifenfei/LX1/LX1_users01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/lx1_db_0bnsn80f_1_1 tag=TAG20121212T224534 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:00:25

Finished backup at 12-DEC-12

RMAN> report schema;

Report of database schema for database with db_unique_name xifenfei

List of Permanent Datafiles

===========================

File Size(MB)
Tablespace           RB
segs Datafile Name

---- --------
-------------------- ------- ------------------------

7   
210     
LX1:SYSTEM          
***     /u01/app/oracle/oradata/xifenfei/LX1/system01.dbf

8   
165     
LX1:SYSAUX          
***     /u01/app/oracle/oradata/xifenfei/LX1/sysaux01.dbf

9   
5       
LX1:USERS           
***    
/u01/app/oracle/oradata/xifenfei/LX1/LX1_users01.dbf

List of Temporary Files

=======================

File Size(MB)
Tablespace          
Maxsize(MB) Tempfile Name

---- --------
-------------------- ----------- --------------------

3   
20      
LX1:TEMP            
32767       /u01/app/oracle/oradata/xifenfei/LX1/temp01.dbf

5.rman通过cdb备份pdb

[oracle@xifenfei admin]$ rman target /

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 23:02:07 2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights reserved.

connected to target database: xifenfei
(DBID=2412861330)

RMAN> backup filesperset = 5 as
compressed backupset pluggable database FF format '/tmp/ff_db_%U';

Starting backup at 12-DEC-12

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=262 device
type=DISK

channel ORA_DISK_1: starting compressed
full datafile backup set

channel ORA_DISK_1: specifying
datafile(s) in backup set

input datafile file number=00017 name=/u01/app/oracle/oradata/xifenfei/xffsysaux01.dbf

input datafile file number=00019 name=/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

input datafile file number=00016 name=/u01/app/oracle/oradata/xifenfei/xffsystem01.dbf

input datafile file number=00018 name=/u01/app/oracle/oradata/xifenfei/xffSAMPLE_SCHEMA_users01.dbf

channel ORA_DISK_1: starting piece 1 at
12-DEC-12

channel ORA_DISK_1: finished piece 1 at
12-DEC-12

piece handle=/tmp/ff_db_0cnsn8vm_1_1 tag=TAG20121212T230214 comment=NONE

channel ORA_DISK_1: backup set complete, elapsed time: 00:01:26

Finished backup at 12-DEC-12

6.模拟pdb库全库恢复

SQL> conn xff/xifenfei@lx1 as sysdba

Connected.

SQL> create table t_xifenfei as select * from dba_objects;

Table created.

SQL> select count(*) from t_xifenfei;

COUNT(*)

----------

19121

--在pdb中不能切换日志(因为日志是全局的)

SQL> alter system switch logfile;

alter system switch logfile

*

ERROR at line 1:

ORA-65040: operation not allowed from within a pluggable database

SQL> shutdown immediate;

Pluggable Database closed.

--删除数据文件

[oracle@xifenfei admin]$ rm
/u01/app/oracle/oradata/xifenfei/LX1/*

--rman基于cdb恢复pdb库

[oracle@xifenfei ~]$ rman target /

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 23:11:22
2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights
reserved.

connected to target database: xifenfei (DBID=2412861330)

RMAN> restore pluggable database lx1;

Starting restore at 12-DEC-12

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=25 device
type=DISK

channel ORA_DISK_1: starting datafile
backup set restore

channel ORA_DISK_1: specifying
datafile(s) to restore from backup set

channel ORA_DISK_1: restoring datafile
00007 to /u01/app/oracle/oradata/xifenfei/LX1/system01.dbf

channel ORA_DISK_1: restoring datafile
00008 to /u01/app/oracle/oradata/xifenfei/LX1/sysaux01.dbf

channel ORA_DISK_1: restoring datafile
00009 to /u01/app/oracle/oradata/xifenfei/LX1/LX1_users01.dbf

channel ORA_DISK_1: reading from backup piece /tmp/lx1_db_0bnsn80f_1_1

channel ORA_DISK_1: piece
handle=/tmp/lx1_db_0bnsn80f_1_1
tag=TAG20121212T224534

channel ORA_DISK_1: restored backup piece
1

channel ORA_DISK_1: restore complete,
elapsed time: 00:00:25

Finished restore at 12-DEC-12

RMAN> recover pluggable database lx1;

Starting recover at 12-DEC-12

using channel ORA_DISK_1

starting media recovery

media recovery complete, elapsed time:
00:00:01

Finished recover at 12-DEC-12

RMAN> alter pluggable database lx1 open;

Statement processed

--验证恢复结果

SQL> conn xff/xifenfei@lx1 as sysdba

Connected.

SQL> select count(*) from t_xifenfei;

COUNT(*)

----------

19121

试验证明:对于pdb库的备份,使用rman可以在cdb级别进行还原和恢复

7.模拟数据文件恢复

SQL> create table t_xifenfei tablespace example

2   as

3    select * from dba_objects;

Table created.

SQL> select count(*) from t_xifenfei;

COUNT(*)

----------

89604

SQL> col name for a60

SQL> set lines 134

SQL> select file#,name from v$datafile;

FILE# NAME

---------- -----------------------------------------------------------

5
/u01/app/oracle/oradata/xifenfei/undotbs01.dbf

16
/u01/app/oracle/oradata/xifenfei/xffsystem01.dbf

17
/u01/app/oracle/oradata/xifenfei/xffsysaux01.dbf

18
/u01/app/oracle/oradata/xifenfei/xffSAMPLE_SCHEMA_users01.dbf

19
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

--离线含测试数据的数据文件

SQL> alter database datafile 19 offline;

Database altered.

--删除数据文件

SQL> !rm
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

SQL> !ls -l
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

ls:
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf: No such file or directory

--尝试pdb级别恢复

[oracle@xifenfei ~]$ rman target
sys/xifenfei@ff

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 23:29:03
2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights
reserved.

connected to target database: xifenfei (DBID=2412861330)

RMAN> restore datafile 19;

Starting restore at 12-DEC-12

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=19 device
type=DISK

RMAN-00571:
===========================================================

RMAN-00569: =============== ERROR MESSAGE
STACK FOLLOWS ===============

RMAN-00571:
===========================================================

RMAN-03002: failure of restore command at 12/12/2012
23:29:15

RMAN-06026: some targets not found - aborting restore

RMAN-06023: no backup or copy of datafile 19 found to restore

--pdb级别不能识别对应数据文件(一种可能是我在cdb级别备份FF库,另一种可能bug)

RMAN> list backup of datafile 19;

specification does not match any backup in the repository

--在cdb级别还原

[oracle@xifenfei tmp]$ rman target /

Recovery Manager: Release 12.1.0.0.2       
on Wed Dec 12 23:44:21
2012

Copyright (c) 1982, 2012, Oracle and/or its affiliates.  All rights
reserved.

connected to target database: xifenfei (DBID=2412861330)

RMAN> list backup of datafile 19;

using target database control file instead of recovery catalog

List of Backup Sets

===================

BS Key  Type LV
Size      
Device Type Elapsed Time Completion Time

------- ---- -- ---------- -----------
------------ ---------------

3      
Full   
76.81M    
DISK       
00:00:44     12-DEC-12

BP
Key: 3   Status: AVAILABLE  Compressed: YES  Tag:
TAG20121212T213626

Piece
Name: /tmp/full_db_07nsn407_1_1

List of Datafiles in backup set 3

File LV Type Ckp SCN    Ckp Time  Name

---- -- ---- ----------
--------- ----

19     
Full 1860043    12-DEC-12
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

BS Key  Type LV
Size      
Device Type Elapsed Time Completion Time

------- ---- -- ---------- -----------
------------ ---------------

8      
Full   
189.52M   
DISK       
00:01:25    
12-DEC-12

BP
Key: 8   Status: AVAILABLE  Compressed: YES  Tag:
TAG20121212T230214

Piece
Name: /tmp/ff_db_0cnsn8vm_1_1

List of Datafiles in backup set 8

File LV Type Ckp SCN    Ckp Time  Name

---- -- ---- ----------
--------- ----

19     
Full 1860043    12-DEC-12
/u01/app/oracle/oradata/xifenfei/xffexample01.dbf

RMAN> restore datafile 19;

Starting restore at 12-DEC-12

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=28 device
type=DISK

channel ORA_DISK_1: starting datafile
backup set restore

channel ORA_DISK_1: specifying
datafile(s) to restore from backup set

channel ORA_DISK_1: restoring datafile
00019 to /u01/app/oracle/oradata/xifenfei/xffexample01.dbf

channel ORA_DISK_1: reading from backup piece /tmp/ff_db_0cnsn8vm_1_1

channel ORA_DISK_1: piece
handle=/tmp/ff_db_0cnsn8vm_1_1 tag=TAG20121212T230214

channel ORA_DISK_1: restored backup piece
1

channel ORA_DISK_1: restore complete,
elapsed time: 00:00:45

Finished restore at 12-DEC-12

--cdb级别恢复数据文件

RMAN> recover datafile 19;

Starting recover at 12-DEC-12

using channel ORA_DISK_1

starting media recovery

media recovery complete, elapsed time:
00:00:01

Finished recover at 12-DEC-12

--cdb级别不能直接online

RMAN> alter database datafile 19 online;

RMAN-00571:
===========================================================

RMAN-00569: =============== ERROR MESSAGE
STACK FOLLOWS ===============

RMAN-00571:
===========================================================

RMAN-03002: failure of sql statement command at 12/12/2012
23:46:15

ORA-01516: nonexistent log file, data
file, or temporary file
"19"

RMAN> alter pluggable database ff datafile 19
online;

RMAN-00571:
===========================================================

RMAN-00569: =============== ERROR MESSAGE
STACK FOLLOWS ===============

RMAN-00571:
===========================================================

RMAN-03002: failure of sql statement command at 12/12/2012
23:47:53

ORA-65046: operation not allowed from outside a pluggable database

--进入pdb库进行online

SQL> alter database datafile 19
online;

Database altered.

--验证数据

SQL> select count(*) from t_xifenfei;

COUNT(*)

----------

89604

试验证明:rman通过cdb级别操作,还是一步步恢复了pdb中离线异常的数据文件

8.pdb数据库冷备恢复

pdb数据库冷备恢复不需要完全关闭cdb数据库,只需要pdb数据库启动到mounted状态即可。



1.确保需要冷备的pdb1的open mode是mounted状态

SQL> show pdbs





    CON_ID CON_NAME  OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

2 PDB$SEED  READ ONLY  NO

3 PDB  READ WRITE NO

4 PDB1  MOUNTED





2.备份pdb1

[oracle@ora12c cdb]$ cp -r pdb1 pdb_bak

3.删除pdb1

[oracle@ora12c cdb]$ rm -rf pdb1

4.把pdb1数据库open

SQL> alter pluggable database pdb1 open;

alter pluggable database pdb1 open

*

ERROR at line 1:

ORA-01157: cannot identify/lock data file 44 - see DBWR trace file

ORA-01110: data file 44: '/u01/app/oracle/oradata/cdb/pdb1/pdb_users01.dbf'

5.利用冷备还原

[oracle@ora12c cdb]$ mv pdb_bak pdb1

6.重新把pdb1数据库open。

SQL> alter pluggable database pdb1 open;





Pluggable database altered.





SQL> show pdbs





    CON_ID CON_NAME  OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

2 PDB$SEED  READ ONLY  NO

3 PDB  READ WRITE NO

4 PDB1  READ WRITE NO

-------------

pdb数据库冷备恢复不需要完全关闭cdb数据库,只需要pdb数据库启动到mounted状态即可。



1.确保需要冷备的pdb1的open mode是mounted状态

SQL> show pdbs





    CON_ID CON_NAME  OPEN MODE
 RESTRICTED

---------- ------------------------------
---------- ----------

2 PDB$SEED  READ ONLY  NO

3 PDB  READ WRITE NO

4 PDB1  MOUNTED





2.备份pdb1

[oracle@ora12c cdb]$ cp -r pdb1 pdb_bak

3.删除pdb1

[oracle@ora12c cdb]$ rm -rf pdb1

4.把pdb1数据库open

SQL> alter pluggable database pdb1 open;

alter pluggable database pdb1 open

*

ERROR at line 1:

ORA-01157: cannot identify/lock data file 44 -
see DBWR trace file

ORA-01110: data file 44:
'/u01/app/oracle/oradata/cdb/pdb1/pdb_users01.dbf'

5.利用冷备还原

[oracle@ora12c cdb]$ mv pdb_bak pdb1

6.重新把pdb1数据库open。

SQL> alter pluggable database pdb1 open;





Pluggable database altered.





SQL> show pdbs





    CON_ID CON_NAME  OPEN MODE
 RESTRICTED

---------- ------------------------------
---------- ----------

2 PDB$SEED  READ ONLY  NO

3 PDB  READ WRITE NO

4 PDB1  READ WRITE NO

上一篇:ansible-安装与使用


下一篇:C#中烦人的Null值判断竟然这样就被消灭了