The Blog from the DBA Classroom

By: Joel Goodman

Try – You Won’t Feel Out of Place

Posted by Joel Goodman on 11/10/2010

Oracle has released for the Grid Infrastructure and for the Database Server. There are some new features in this patch set, but the one with an immediate impact is “”Out-of-Place” patch set upgrades where the install is done into a separate Oracle Home directory, rather than into the existing Oracle home.

Out of place upgrades relate to:

  • Oracle Database Server
  • Oracle Grid Infrastructure
  • Oracle Database Client
  • Companion/examples
  • Oracle Gateways

Here are some details:

  • “Out-of-Place” upgrades are Full Installs
  • New installs are done by installing the latest patch set, rather than installing the base release and then “patching up” to the latest patch set
  • Upgrades for the Grid Infrastructure Home must be done “Out-of-Place.
  • Upgrades for the Oracle Database Server are recommended to be done “Out-of-Place”
  • Upgrades for the Oracle Database Client may be done either “In-Place” or “Out-of-Place”
  • Note 1189783.1 contains useful information relating to this.

Implications for using “Out-of-Place” upgrades:

  • For new installs it saves the need to patch up to the latest release
  • For upgrades, the process is the same as for a change in version
  • Less downtime is required for an upgrade, because the install, including linking binaries is done without downtime
  • It is safer as it does not modify the Oracle home that is currently used for live systems
  • It requires more disk space at least for a time, since the complete Oracle home is installed in a separate location
  • The steps are different than for upgrades in the past, so it is advisable to read up on the process.
  • Any shell scripts, variables and other files referring to the old Oracle Home, must be checked and modified once the upgrade is finished

My Experience with Upgrade

I downloaded the images for the Grid Infrastructure and Database and used them to upgrade my Grid Infrastructure for a Standalone Server and my Oracle Single Instance Database. Here were the steps I followed:

  1. Extended the file system mounted on /u01 because it lacked the space for the out of place upgrade. As I use Logical Volume Management this was fairly easy to do.
  2. Shut down my database instances running from the Oracle Database home, but left the Grid Infrastructure running from the home
  3. Made sure that the JULY PSU is present in the Grid Infrastructure home IE
  4. Installed the Grid Infrastructure for a Standalone Server into a new home
  5. Executed the script as instructed to by the installer.
  6. After this script finished, the Grid Infrastructure was running from the new home, and the inventory had been updated to reflect the change in home
  7. The script also modified the entry in /etc/oratab for the ASM instance, and the files in /etc/oracle used to point to the Oracle Local Repository file (OLR) which had been moved and updated into the new home
  8. After rebooting my node however i discovered problems cause by bug 10167269. The script failed to replace the /etc/init.d.init.ohasd and /etc/init.d/ohasd scripts and the scripts used to start the ohasd “lower stack” were still referring to the old Oracle GI home.
  9. I manually modified the scripts to refer to the new Oracle Home to work around the problem and then the ohasd stack started properly.
  10. Once I was satisfied that the Grid Infrastructure was working properly, I removed the old Oracle home.
  11. At this point Grid Infrastructure was running and i was able to use it to manage my Oracle database
  12. I then installed Database home “Out-of-Place” into a new home, having selected the option to upgrade my database in the old home
  13. I executed which updated the inventory and copied and modified other required files for the home
  14. Database Upgrade Assistant then ran to complete the upgrade inside the database
  15. I now had an Database and Database home, managed by the Grid Infrastructure
  16. Finally, when I was convinced that it was all working including after a node reboot, I removed the old database home.

Some observations during and after the upgrade:

  • Startup of the Grid Infrastructure takes longer than  This may be due to my workaround for bug 10167269 but I need more time to investigate this.
  • Note 1230405.1 suggests the manual modification of the scripts to refer to the new location as I did in step 8 listed above
  • The Oracle Universal Installer also supports installation of critical patch updates,  updates for system requirements and other important updates. I tested this by supplying my Oracle Support credentials and it found no updates to but this was not surprising on the day after release.
  • The “Download Software Updates” feature is now the first step in the Universal Installer followed possibly by “Apply Software Updates” followed by the “Installation Option” section.
  • The elapsed time for this work was about 3 hours including the manual workaround due to the bug.
  • As has been pointed out by some, the documentation was missing some details and the README for did not have a step by step set of instructions at the time i loaded the product.


in general the out of place upgrade was easy to do provides a good tradeoff between availability and the use of extra disk space for a period of time. Now that the technote with a workaround for the bug is available you should be confident trying an “Out -of-Place” upgrade.

Have a go!


4 Responses to “Try – You Won’t Feel Out of Place”

  1. […] to make Transient Logical Standby possible. I have installed the new sources of as an Out-of-Place-Upgrade in a seperate Oracle Home and switch the environment now to […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: