I will explain Expdp Version Parameter | Export-Import between releases of Oracle in this post.
Export-Import between releases of Oracle
If you want to learn Data pump from scratch, read the following post.
Oracle Data Pump – Export Import ( Expdp Impdp ) Tutorial with Examples-1
Expdp Version Parameter
Oracle Data pump technology provides to export and import of any portion of a database between different releases of the database. The VERSION parameter is used to perform this task.
If you will migrate table or schema using expdp-impdp between different version of Oracle database, you need to use the VERSION parameter.
If the Target database’s release is higher than the source, the VERSION parameter typically does not have to be specified because all objects in the source database will be compatible with the higher target release.
The VERSION parameter should be used when the Source database’s release is higher than the Target database.
An exception is when an entire Oracle Database 11g (release 11.2.0.3 or higher) is exported in preparation for importing into Oracle Database 12c Release 1 (12.1.0.1) or later. In this case, explicitly specify VERSION=12 in conjunction with FULL=YES in order to include a complete set of Oracle internal component metadata.
The syntax of VERSION parameter is as follows.
VERSION=[COMPATIBLE | LATEST | version_string]
The legal values for the VERSION parameter are as follows:
- COMPATIBLE – This is the default value. The version of the metadata corresponds to the database compatibility level as specified on the COMPATIBLE initialization parameter. Database compatibility must be set to 9.2 or later.
- LATEST – The version of the metadata and resulting SQL DDL corresponds to the database release regardless of its compatibility level.
- version_string – A specific database release (for example, 11.2.0). In Oracle Database 11g, this value cannot be lower than 9.2.
For example; Your Source database is running on Oracle 12c and Target database is Oracle 11.2.0.4. You want to export HR.PERSONEL table and import into Target database.
Source database’s version is higher than target database, so You should use the VERSION parameter as follows.
VERSION=11.2
expdp \"/ as sysdba\" tables=HR.personel DIRECTORY=DATAPUMP DUMPFILE=personel.dmp LOGFILE=personel.log VERSION=11.2
If you don’t use the VERSION parameter, you will get the following parameter.
ORA-39358: Export dump file version 18.3.0.0.0 not compatible with target version 18.1.0.0.0
You can read the following post to learn more details about Oracle Data pump.
Oracle Data Pump – Export Import ( Expdp Impdp ) Tutorial with Examples-4
Do you want to learn Oracle Database for Beginners, then read the following articles.
Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )