1

I am trying to import an Oracle backup .DMP file into a new Oracle DB and I'm getting the error "ORA-39142: incompatible version number 3.1". My research tells me that this is because the version of Oracle that the .DMP file is coming from is newer than the version I have running (running on a VM), but I have no control over the export process for this .DMP file so I can't play games there to "downgrade" the export.

Is there a way import this backup file without fiddling with the export process and without upgrading the Oracle VM I'm using?

1
  • what version are you running? What version is the source system? are you talking about a file generated using datapump oruring the old oracle export? Does your export contain data or only objects. Waht type of export is this (table,schema,tablespace,full)?
    – miracle173
    Commented Apr 18, 2012 at 15:37

2 Answers 2

1

Here's an interesting blog entry from Burleson computing that appears potentially useful for your circumstance.

From the site:

There are two cases where it is possible to import into an earlier release:

1 - Using the version parameter in Data Pump. See my notes on importing between different releases of Oracle with Data Pump export/import

2 - Using a exp dump file with a Data Pump impdp utility.

2
  • Unfortunately the VERSION= parameter can only be used during the export process, so the OP won't be able to utilise it.
    – Philᵀᴹ
    Commented Apr 18, 2012 at 14:45
  • "2 - Using a exp dump file with a Data Pump impdp utility." I think that this is mistake by Mr Burleson. impdp cannot use files created by exp but only files by expdp (data pump) docs.oracle.com/cd/B28359_01/server.111/b28319/…
    – miracle173
    Commented Apr 18, 2012 at 15:31
0

If the databases are on the same network and are not too many versions out this should work:

You have to use the export utility from your older database to get the data out of the newer database. (this might not work when trying to use an oracle 8i exp on an Oracle 11g database)

Add the information about the new database to the TNSNAMES.ora file on the older database

Run the exp utility from the command line or script on your old database

  • connect to the new database
  • export the data as a .dmp file
  • copy the dump file over to your old database
  • import using the imp utility on your old database

Watch out for character set conversions, you do not want Oracle truncating or replacing characters. Set the option to the same character set in the scripts for the export and import.

EDIT You cannot use the existing dump file but you do not have to upgrade the older Oracle version. You need to create a dump file compatible with the older Oracle version.

1
  • 1
    "Is there a way import this backup file without fiddling with the export process and without upgrading the Oracle VM I'm using?"
    – Philᵀᴹ
    Commented Apr 18, 2012 at 15:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.