Upgrade scenario: Oracle 8.0.5.0.0 to Oracle 12c

oracleoracle-12cupgrade

we have a very old Oracle 8.0.5.0.0 database here that – unfortunately – is still used heavily as every day production system.

I want to start making plans on how to get this DB upgrade to a recent Oracle 12c.

Unfortunately, both DB versions don't seem to be able to talk to each other anymore (*). So to my current knowledge, the only solution is to import daily backups from 8.0.5.0.0 into 12c, which – from the technical point of view – works, but is not feasible because the 8.0.5.0.0 is used in daily business. Beside: The data on the 8.0.5.0.0 server is that large that an import of the backup in the 12c server (on a recent Dell server) takes about 6-8 hours.

So, the question is:

What might be a good approach for a upgrade strategy from 8.0.5.0.0 to 12c?

Thanks for any input.

(*) Of course old Oracle 8.0.5.0.0 clients can talk to the Oracle 8.0.5.0.0 server and recent 12c clients can talk to the 12c server. But there does not seem to be a client solution that can talk to both 8.0.5.0.0 and 12c.

Best Answer

There are multiple solutions to this problem but the driving issues are cost, allowable downtime and complexity.

  • Golden Gate could be purchased with a one year license and will do a zero downtime upgrade from Oracle 8i to 12. You still have to upgrade from 8.05 to 8i.
  • Your life could be simplified by using VmWare P2V to convert the machine to a virtual machine without any downtime. This method allows you to:
    • get your production database on better hardware which should improve the speed of most operations
    • allows you to make a copy of the machine, put it on a different subnet and start testing various strategies
  • I have imported schemas from our Oracle 8i database directly into Oracle 11.2 without issues. Your mileage may vary depending on character sets, licensed features and any unorthodox strategies your programmers have in the PL/SQL code.

One method that could be easily tested:

  • buy a new server with some serious hardware like 32GB RAM, install VMWare Esxi
  • convert your old machine to a virtual
  • create a development copy of the Oracle 8.05
  • install another virtual machine with Oracle 12
  • install another virtual machine with Oracle 10XE or 11XE
  • take snapshots of all the machines with no changes
  • take an export of the 8.05 development, import into Oracle 10XE or 11XE, test and verify
  • data pump to the 12 database
  • verify the data on 12 and offline the 8.05 and oracle 10XE or 11XE

This method needs downtime. A weekend should be more than adequate and only costs you a new server, Oracle 12 licence and some VMWare software licenses. Keep in mind that testing and verification can take more time than importing the data.