Default: NEVER
Purpose
Specifies whether the transportable option should be used during a table mode import (specified with the TABLES
parameter) or a full mode import (specified with the FULL
parameter).
Syntax and Description
TRANSPORTABLE = [ALWAYS | NEVER]
The definitions of the allowed values are as follows:
ALWAYS
- Instructs the import job to use the transportable option. If transportable is not possible, then the job fails.
In a table mode import, using the transportable option results in a transportable tablespace import in which only metadata for the specified tables, partitions, or subpartitions is imported.
In a full mode import, using the transportable option results in a full transportable import in which metadata for all objects in the specified database is imported.
In both cases you must copy (and possibly convert) the actual data files to the target database in a separate operation.
When transportable jobs are performed, it is best practice to keep a copy of the data files on the source system until the import job has successfully completed on the target system. If the import job should fail for some reason, you will still have uncorrupted copies of the data files.
NEVER
- Instructs the import job to use either the direct path or external table method to load data rather than the transportable option. This is the default.
If only a subset of a table's partitions are imported and the TRANSPORTABLE=ALWAYS
parameter is used, then each partition becomes a non-partitioned table.
If only a subset of a table's partitions are imported and the TRANSPORTABLE
parameter is not used or is set to NEVER
(the default), then:
If PARTITION_OPTIONS=DEPARTITION
is used, then each partition is created as a non-partitioned table.
If PARTITION_OPTIONS
is not used, then the complete table is created. That is, all the metadata for the complete table is present so that the table definition looks the same on the target system as it did on the source. But only the data for the specified partitions is inserted into the table.
Restrictions
The Import TRANSPORTABLE
parameter is valid only if the NETWORK_LINK
parameter is also specified.
The TRANSPORTABLE
parameter is only valid in table mode imports and full mode imports.
The user performing a transportable import requires the DATAPUMP_EXP_FULL_DATABASE
role on the source database and the DATAPUMP_IMP_FULL_DATABASE
role on the target database.
All objects with storage that are selected for network import must have all of their storage segments on the source system either entirely within administrative, non-transportable tablespaces (SYSTEM
/ SYSAUX
) or entirely within user-defined, transportable tablespaces. Storage for a single object cannot straddle the two kinds of tablespaces.
To use the TRANSPORTABLE
parameter to perform a network-based full transportable import, the Data Pump VERSION
parameter must be set to at least 12.0 if the source database is release 11.2.0.3. If the source database is release 12.1 or later, then the VERSION
parameter is not required, but the COMPATIBLE
database initialization parameter must be set to 12.0.0 or later.
Example 1
The following example shows the use of the TRANSPORTABLE
parameter during a network link import.
> impdp system TABLES=hr.sales TRANSPORTABLE=ALWAYS
DIRECTORY=dpump_dir1 NETWORK_LINK=dbs1 PARTITION_OPTIONS=DEPARTITION
TRANSPORT_DATAFILES=datafile_name
Example 2
The following example shows the use of the TRANSPORTABLE
parameter when performing a full transportable import where the NETWORK_LINK
points to a an Oracle Database 11g release 2 (11.2.0.3) system with encrypted tablespaces and tables with encrypted columns.
> impdp import_admin FULL=Y TRANSPORTABLE=ALWAYS VERSION=12 NETWORK_LINK=dbs1 ENCRYPTION_PASSWORD=password TRANSPORT_DATAFILES=<datafile_name> LOGFILE=dpump_dir1:fullnet.log
"Using Data File Copying to Move Data" for more information about why it's a best practice to maintain a copy of your data files on the source system