發(fā)布于:2021-02-07 10:25:20
0
726
0
在oracle19c中,DBCA在靜默模式下添加了許多新功能。
在oracle18c中,我們可以通過(guò)guidbca和DBCA-silent-createPluggableDatabase命令克隆PDB。
Oracle 19c中的新功能是創(chuàng)建PDB的遠(yuǎn)程克隆,以及使用DBCA靜默模式執(zhí)行PDB的重定位。
我們可以使用DBCA命令createPluggableDatabase的createfromlotepdb參數(shù)通過(guò)克隆遠(yuǎn)程PDB來(lái)創(chuàng)建PDB,也可以使用relocatePDB選項(xiàng)將PDB從一個(gè)容器數(shù)據(jù)庫(kù)重定位到另一個(gè)容器數(shù)據(jù)庫(kù)。 讓我們看一個(gè)成功的例子。 以下是19c環(huán)境: host01:CDB1(PDB1,PDB2) host02:CDB2(PDB2) 我們將從CDB1遠(yuǎn)程克隆PDB1,并在容器數(shù)據(jù)庫(kù)CDB2中創(chuàng)建可插入數(shù)據(jù)庫(kù)。 然后,我們將通過(guò)使用dbca silent方法克隆PDB1,在CDB1中創(chuàng)建另一個(gè)可插入數(shù)據(jù)庫(kù)PDB3。 然后我們將PDB3從CDB1重新定位到CDB2。 為此,我們需要在CDB1中創(chuàng)建一個(gè)公共用戶(hù),并使用此用法創(chuàng)建從CDB2到CDB1的數(shù)據(jù)庫(kù)鏈接。 ***Create common user in CDB1*** 遠(yuǎn)程可插拔克隆 使用帶有-createfromlotepdb子句的dbca-silent-createPluggableDatabase命令創(chuàng)建可插入數(shù)據(jù)庫(kù)。 [oracle@host02 ~]$ dbca -silent -createPluggableDatabase -pdbname pdb1 -sourceDB cdb2 -createFromRemotePDB -remotePDBName pdb1 -dbLinkUsername c##link_user -remoteDBConnString "host01:1521/cdb1.localdomain" -remoteDBSYSDBAUserName SYS -dbLinkUserPassword oracle -remoteDBSYSDBAUserPassword welcome1 -sysDBAUserName SYS -sysDBAPassword welcome1 -pdbDatafileDestination '/u01/app/oracle/oradata/CDB2/pdb1/' 重新定位可插入數(shù)據(jù)庫(kù) 首先,我們使用dbca-silent-createPluggableDatabase命令從PDB1克隆來(lái)創(chuàng)建CDB1中的PDB3 [oracle@host01 ~]$ dbca -silent -createPluggableDatabase -sourceDB cdb1 -pdbName pdb3 -createAsClone FALSE -createPDBFrom PDB -sourcePDB pdb1 -fileNameConvert '/u01/app/oracle/oradata/CDB1/pdb1/','/u01/app/oracle/oradata/CDB1/pdb3/' 使用dbca-silent-relocatePDB命令將PDB3從CDB1重新定位到CDB2。 [oracle@host02 ~]$ dbca -silent -relocatePDB -pdbname pdb3 -sourceDB cdb2 -remotePDBName pdb3 -dbLinkUsername c##link_user -remoteDBConnString "host02:1521/cdb1.localdomain" -remoteDBSYSDBAUserName SYS -dbLinkUserPassword oracle -remoteDBSYSDBAUserPassword G#vin2407 -sysDBAUserName SYS -sysDBAPassword G#vin2407 -pdbDatafileDestination '/u01/app/oracle/oradata/CDB2/pdb3/'
SQL> create user c##link_user identified by oracle container=all;
User created.
SQL> grant sysoper,sysdba to c##link_user container=all;
Grant succeeded.
SQL> grant create pluggable database to c##link_user container=all;
Grant succeeded.
SQL> grant create session to c##link_user container=all;
Grant succeeded.
***Add TNS entry to connect to CDB1 from CDB2***
CDB1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = host02.localdomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = cdb1.localdomain)
)
)
***Create database link from CDB2 to CDB1***
SQL> create database link cdb1_link connect to c##link_user identified by oracle
using 'cdb1';
Database link created.
SQL> select * from dual@cdb1_link;
D
-
X
***Note the PDB's currently in CDB2***
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB2 READ WRITE NO
Prepare for db operation
50% complete
Create pluggable database using remote clone operation
100% complete
Pluggable database "pdb1" plugged successfully.
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb2/pdb1/cdb2.log" for further details.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB2 READ WRITE NO
4 PDB1 READ WRITE NO
Prepare for db operation
13% complete
Creating Pluggable Database
15% complete
19% complete
23% complete
31% complete
53% complete
Completing Pluggable Database Creation
60% complete
Executing Post Configuration Actions
100% complete
Pluggable database "pdb3" plugged successfully.
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb1/pdb3/cdb1.log" for further details.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
4 PDB2 READ WRITE NO
5 PDB3 READ WRITE NO
Prepare for db operation
50% complete
Create pluggable database using relocate PDB operation
100% complete
Pluggable database "pdb3" plugged successfully.
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb2/pdb3/cdb2.log" for further details.
****Note the PDB's now in CDB2****
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB2 READ WRITE NO
4 PDB1 READ WRITE NO
5 PDB3 READ WRITE NO
****Note the PDB's now in CDB1****
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
4 PDB2 READ WRITE NO
作者介紹
熱門(mén)博客推薦