These examples plug in an unplugged PDB named salespdb
using the /disk1/usr/salespdb.xml file or the /disk1/usr/sales.pdb file given different factors.
In each example, the root to which the new PDB belongs depends on the current container when the CREATE PLUGGABLE DATABASE
statement is run:
-
When the current container is the CDB root, the new PDB is created in the CDB.
-
When the current container is an application root, the new application PDB is created in the application root’s application container.
Example 9-3 Plugging In an Unplugged PDB Using the NOCOPY Clause
This example assumes the following factors:
-
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The
PATH_PREFIX
clause is not required. -
The XML file accurately describes the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is not required. -
The files are in the correct location. Therefore,
NOCOPY
is included. -
Storage limits are not required for the PDB. Therefore, the
STORAGE
clause is not required. -
A file with the same name as the temp file specified in the XML file exists in the target location. Therefore, the
TEMPFILE REUSE
clause is required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/salespdb.xml' NOCOPY TEMPFILE REUSE;
Example 9-4 Plugging In an Unplugged PDB Using the AS CLONE and NOCOPY Clauses
This example assumes the following factors:
-
The new PDB is based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is required. TheAS
CLONE
clause ensures that the new PDB has unique identifiers. -
The
PATH_PREFIX
clause is not required. -
The XML file accurately describes the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is not required. -
The files are in the correct location. Therefore,
NOCOPY
is included. -
Storage limits are not required for the PDB. Therefore, the
STORAGE
clause is not required. -
A file with the same name as the temp file specified in the XML file exists in the target location. Therefore, the
TEMPFILE REUSE
clause is required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb AS CLONE USING '/disk1/usr/salespdb.xml' NOCOPY TEMPFILE REUSE;
Example 9-5 Plugging In an Unplugged PDB Using the SOURCE_FILE_NAME_CONVERT, NOCOPY, and STORAGE Clauses
This example assumes the following factors:
-
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The
PATH_PREFIX
clause is not required. -
The XML file does not accurately describe the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is required. In this example, the XML file indicates that the files are in /disk1/oracle/sales, but the files are in /disk2/oracle/sales, and theSOURCE_FILE_NAME_CONVERT
clause is used. -
The files are in the correct location. Therefore,
NOCOPY
is included. -
Storage limits must be enforced for the PDB. Therefore, the
STORAGE
clause is required. Specifically, all tablespaces that belong to the PDB must not exceed 2 gigabytes. -
A file with the same name as the temp file specified in the XML file exists in the target location. Therefore, the
TEMPFILE REUSE
clause is required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/salespdb.xml' SOURCE_FILE_NAME_CONVERT = ('/disk1/oracle/sales/', '/disk2/oracle/sales/') NOCOPY STORAGE (MAXSIZE 2G) TEMPFILE REUSE;
Example 9-6 Plugging In an Unplugged PDB With the COPY, PATH_PREFIX, and FILE_NAME_CONVERT Clauses
This example assumes the following factors:
-
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The path prefix must be added to the PDB's directory object paths. Therefore, the
PATH_PREFIX
clause is required. In this example, the path prefix /disk2/oracle/sales/ is added to the PDB’s directory object paths. -
The XML file accurately describes the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is not required. -
The files are not in the correct location. Therefore,
COPY
orMOVE
must be included. In this example, the files are copied.The
CREATE_FILE_DEST
clause is not used, Oracle Managed Files is not enabled, and thePDB_FILE_NAME_CONVERT
initialization parameter is not set. Therefore, theFILE_NAME_CONVERT
clause is required. In this example, the files are copied from /disk1/oracle/sales to /disk2/oracle/sales. -
Storage limits are not required for the PDB. Therefore, the
STORAGE
clause is not required. -
There is no file with the same name as the new temp file that will be created in the target location. Therefore, the
TEMPFILE REUSE
clause is not required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/salespdb.xml' COPY PATH_PREFIX = '/disk2/oracle/sales/' FILE_NAME_CONVERT = ('/disk1/oracle/sales/', '/disk2/oracle/sales/');
Example 9-7 Plugging In an Unplugged PDB Using the SOURCE_FILE_NAME_CONVERT, MOVE, FILE_NAME_CONVERT, and STORAGE Clauses
This example assumes the following factors:
-
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The
PATH_PREFIX
clause is not required. -
The XML file does not accurately describe the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is required. In this example, the XML file indicates that the files are in /disk1/oracle/sales, but the files are in /disk2/oracle/sales, and theSOURCE_FILE_NAME_CONVERT
clause is used. -
The files are not in the correct final location for the PDB. Therefore,
COPY
orMOVE
must be included. In this example,MOVE
is specified to move the files.The
CREATE_FILE_DEST
clause is not used, Oracle Managed Files is not enabled, and thePDB_FILE_NAME_CONVERT
initialization parameter is not set. Therefore, theFILE_NAME_CONVERT
clause is required. In this example, the files are moved from /disk2/oracle/sales to /disk3/oracle/sales. -
Storage limits must be enforced for the PDB. Therefore, the
STORAGE
clause is required. Specifically, all tablespaces that belong to the PDB must not exceed 2 gigabytes. -
There is no file with the same name as the new temp file that will be created in the target location. Therefore, the
TEMPFILE REUSE
clause is not required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/salespdb.xml' SOURCE_FILE_NAME_CONVERT = ('/disk1/oracle/sales/', '/disk2/oracle/sales/') MOVE FILE_NAME_CONVERT = ('/disk2/oracle/sales/', '/disk3/oracle/sales/') STORAGE (MAXSIZE 2G);
Example 9-8 Plugging In an Unplugged PDB Using the SOURCE_FILE_DIRECTORY, MOVE, FILE_NAME_CONVERT, and STORAGE Clauses
This example assumes the following factors:
-
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The
PATH_PREFIX
clause is not required. -
The XML file does not accurately describe the current locations of the files. Therefore, the
SOURCE_FILE_NAME_CONVERT
clause orSOURCE_FILE_DIRECTORY
clause is required. In this example, the XML file indicates that the files are in /disk1/oracle/sales, but the files are in /disk2/oracle/sales, and theSOURCE_FILE_DIRECTORY
clause is used. -
The files are not in the correct final location for the PDB. Therefore,
COPY
orMOVE
must be included. In this example,MOVE
is specified to move the files.The
CREATE_FILE_DEST
clause is not used, Oracle Managed Files is not enabled, and thePDB_FILE_NAME_CONVERT
initialization parameter is not set. Therefore, theFILE_NAME_CONVERT
clause is required. In this example, the files are moved from /disk2/oracle/sales to /disk3/oracle/sales. -
Storage limits must be enforced for the PDB. Therefore, the
STORAGE
clause is required. Specifically, all tablespaces that belong to the PDB must not exceed 2 gigabytes. -
There is no file with the same name as the new temp file that will be created in the target location. Therefore, the
TEMPFILE REUSE
clause is not required.
Given the preceding factors, the following statement plugs in the PDB:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/salespdb.xml' SOURCE_FILE_DIRECTORY = '/disk2/oracle/sales/' MOVE FILE_NAME_CONVERT = ('/disk2/oracle/sales/', '/disk3/oracle/sales/') STORAGE (MAXSIZE 2G);
Example 9-9 Plugging In an Unplugged PDB Using an Archive File
This example assumes the following factors:
-
The unplugged PDB is in a .pdb archive file named sales.pdb. The archive file includes the XML metadata file and the PDB’s files (such as the data files and wallet file) in compressed form, and these files are extracted to the current directory of the .pdb archive file when the
CREATE PLUGGABLE DATABASE
statement is run. -
The new PDB is not based on the same unplugged PDB that was used to create an existing PDB in the CDB. Therefore, the
AS
CLONE
clause is not required. -
The
PATH_PREFIX
clause is not required. -
Storage limits must be enforced for the PDB. Therefore, the
STORAGE
clause is required. Specifically, all tablespaces that belong to the PDB must not exceed 2 gigabytes. -
There is no file with the same name as the new temp file that will be created in the target location. Therefore, the
TEMPFILE REUSE
clause is not required.
Given the preceding factors, the following statement plugs in the PDB using an archive file:
CREATE PLUGGABLE DATABASE salespdb USING '/disk1/usr/sales.pdb' STORAGE (MAXSIZE 2G);
Parent topic: Plugging In an Unplugged PDB