oracle 12c 学习之三 pdb 的可拔插测试

DECLARE
l_result BOOLEAN;
BEGIN
l_result := DBMS_PDB.check_plug_compatibility(
pdb_descr_file => '/u02/pdb/pdb3.xml',
pdb_name       => 'pdb3');
IF l_result THEN
DBMS_OUTPUT.PUT_LINE('compatible');
ELSE
DBMS_OUTPUT.PUT_LINE('incompatible');
END IF;
END;
/
1、当前库的可拔插测试
21:06:51 sys@stldb> alter pluggable database prod unplug into '/u02/pdb/prod.xml'; 

Pluggable database altered. 

Elapsed: 00:00:04.88 
21:07:48 sys@stldb> drop pluggable database prod; 

Pluggable database dropped. 

Elapsed: 00:00:04.46 
21:09:35 sys@stldb> select con_id, dbid, guid, name , open_mode from v$pdbs; 

CON_ID DBID GUID NAME OPEN_MODE 
------------- ------------- -------------------------------- ------------------------------ ---------- 
2 4117202806 117BCA51FD151564E0536506A8C0D708 PDB$SEED READ ONLY 
3 3382304421 117C1A2739A394A2E0536506A8C0E86A PDB1 READ WRITE 
4 3940876746 117C20359794C040E0536506A8C0B458 PDB2 READ WRITE 
6 3885367953 118F19327FCC760FE0536506A8C05BDF PDB4 READ ONLY 

Elapsed: 00:00:00.01 
21:09:50 sys@stldb> DECLARE 
21:12:41 2 l_result BOOLEAN; 
21:12:42 3 BEGIN 
21:12:42 4 l_result := DBMS_PDB.check_plug_compatibility( 
21:12:42 5 pdb_descr_file => '/u02/pdb/prod.xml', 
21:12:42 6 pdb_name => 'prod'); 
21:12:42 7 IF l_result THEN 
21:12:42 8 DBMS_OUTPUT.PUT_LINE('compatible'); 
21:12:42 9 ELSE 
21:12:42 10 DBMS_OUTPUT.PUT_LINE('incompatible'); 
21:12:42 11 END IF; 
21:12:42 12 END; 
21:12:42 13 / 
compatible 

PL/SQL procedure successfully completed. 

Elapsed: 00:00:00.10 
21:12:43 sys@stldb> create pluggable database prod using '/u02/pdb/prod.xml' nocopy tempfile reuse;

当然,我们在这一步还是可以进行改名的不一定使用原来的名字

21:14:17 sys@stldb> alter session set container=prod; 

Session altered. 

Elapsed: 00:00:00.09 
21:14:37 sys@stldb> select name from v$datafile; 

NAME 
---------------------------------------------------------------------------------------------------------------------------------- 
+DATA/STLDB/DATAFILE/undotbs1.261.874613095 
+DATA/STLDB/118073E7A685F068E0536506A8C0A25E/DATAFILE/system.294.874633201 
+DATA/STLDB/118073E7A685F068E0536506A8C0A25E/DATAFILE/sysaux.293.874633187 
+DATA/STLDB/118073E7A685F068E0536506A8C0A25E/DATAFILE/users.296.874633293 
+DATA/STLDB/118073E7A685F068E0536506A8C0A25E/DATAFILE/kiwi.339.874702947 

Elapsed: 00:00:00.08 
21:14:45 sys@stldb> select name from v$tempfile; 

NAME 
---------------------------------------------------------------------------------------------------------------------------------- 
+DATA/STLDB/118073E7A685F068E0536506A8C0A25E/TEMPFILE/temp.295.874703627

2 跨库的可拔插测试
21:48:28 sys@stldb> alter pluggable database pdb3 close; 

Pluggable database altered. 

Elapsed: 00:00:03.97 
21:48:53 sys@stldb> alter pluggable database pdb3 unplug into '/u02/pdb/pdb3.xml'; 

Pluggable database altered. 

Elapsed: 00:00:05.15 
21:49:34 sys@stldb> quit 
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production 
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, 
Advanced Analytics and Real Application Testing options 
[21:50:07 oracle(db)@rac1 ~]$ rman target / 

Recovery Manager: Release 12.1.0.1.0 - Production on Wed Mar 18 21:50:11 2015 

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

connected to target database: STLDB (DBID=3188959514) 

RMAN> BACKUP FOR TRANSPORT AS COMPRESSED BACKUPSET PLUGGABLE DATABASE 'PDB3' FORMAT '/u02/pdb/pdb3.dfb'; 

Starting backup at 18-MAR-15 
using target database control file instead of recovery catalog 
allocated channel: ORA_DISK_1 
channel ORA_DISK_1: SID=258 instance=stldb1 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=00049 name=+DATA/pdb3/pdb3_sysaux01.dbf 
input datafile file number=00048 name=+DATA/pdb3/pdb3_system01.dbf 
input datafile file number=00051 name=+DATA/pdb3/pdb3_kiwi01.dbf 
input datafile file number=00050 name=+DATA/pdb3/pdb3_users01.dbf 
channel ORA_DISK_1: starting piece 1 at 18-MAR-15 
channel ORA_DISK_1: finished piece 1 at 18-MAR-15 
piece handle=/u02/pdb/pdb3.dfb tag=TAG20150318T215139 comment=NONE 
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:15 
Finished backup at 18-MAR-15 

然后在另外的库上转储进行恢复这个数据库
RMAN> run
2> {
3> set command id  to 'pdb3';
4> RESTORE FOREIGN DATAFILE  48 TO NEW ,49 TO NEW ,50 TO NEW,51 TO NEW  FROM BACKUPSET  
5> '/u02/pdb/pdb3.dfb' ;
6>  };

executing command: SET COMMAND ID

Starting restore at 19-MAR-15
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=142 instance=prod1 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 foreign file 00048
channel ORA_DISK_1: restoring foreign file 00049
channel ORA_DISK_1: restoring foreign file 00050
channel ORA_DISK_1: restoring foreign file 00051
channel ORA_DISK_1: reading from backup piece /u02/pdb/pdb3.dfb
channel ORA_DISK_1: restoring foreign file 48 to +DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/system.351.874714735
channel ORA_DISK_1: restoring foreign file 49 to +DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/sysaux.350.874714735
channel ORA_DISK_1: restoring foreign file 50 to +DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/users.353.874714735
channel ORA_DISK_1: restoring foreign file 51 to +DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/kiwi.352.874714735
channel ORA_DISK_1: foreign piece handle=/u02/pdb/pdb3.dfb
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:01:06
Finished restore at 19-MAR-15

创建pdb
create pluggable database pdb3 as clone  using '/u02/pdb/pdb3.xml'    
 source_file_name_convert = (
 '+DATA/pdb3/pdb3_system01.dbf',
'+DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/system.351.874714735',
 '+DATA/pdb3/pdb3_sysaux01.dbf',
'+DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/sysaux.350.874714735',
'+DATA/pdb3/pdb3_users01.dbf',
'+DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/users.353.874714735',
'+DATA/pdb3/pdb3_temp01.dbf',
'+DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/temp01.dbf',
'+DATA/pdb3/pdb3_kiwi01.dbf',
'+DATA/PROD/1191435B2E309449E0536506A8C02DFC/DATAFILE/kiwi.352.874714735')
file_name_convert=NONE  NOCOPY;

00:45:17 sys@prod> select con_id, dbid, guid, name , open_mode from v$pdbs; 

CON_ID DBID GUID NAME OPEN_MODE 
------------- ------------- -------------------------------- ------------------------------ ---------- 
2 4117299261 11900B6E18D984BAE0536506A8C0B9FE PDB$SEED READ ONLY 
3 3990814677 1193C11BCCBCAD60E0536506A8C0ABA9 PDB3 MOUNTED 

Elapsed: 00:00:00.01 
00:46:04 sys@prod> alter pluggable database pdb3 open; 

Pluggable database altered. 

Elapsed: 00:00:20.39 
00:46:35 sys@prod> alter session set container=pdb3 
00:46:55 2 ; 

Session altered. 

Elapsed: 00:00:00.11 
00:46:56 sys@prod> select name from v$tablespace; 

NAME 
------------------------------ 
UNDOTBS1 
SYSTEM 
SYSAUX 
TEMP 
USERS 
KIWI 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。