I, too, found Arup Nanda's tips in "Five DBA best practices" very helpful. The first tip where he discusses creating an entirely new Oracle Home to apply a patch could refer to applying a one-off patch, a CPU or a patch set. I, typically, do not use Enterprise Manager to apply patches so I am unsure of the process involved, but I see no reason why Arup's tip would not apply to both Unix and Windows operating systems. Basically, Arup is suggesting that an entirely new Oracle Home be created the same as the existing Oracle Home. Be sure to install the same components and patches. You would then apply the new patch to the new Oracle Home. During a scheduled outage window, you would shut down the database, point it at the new Oracle Home and your database would be upgraded. If there is a problem, you could shut the database down and point it back to the original Oracle Home.
One word of caution is that, depending on the patch, there may or may not be an additional step of running a database script. If the patch requires that changes be made to the data dictionary, it may not be as easy to back out. As well, if you are applying a patch set (e.g., 10.2.0.1 to 10.2.0.3) you may have to restore your database to revert back to the previous release. The installation documents that accompany the patches or patch sets will clearly advise you of the back out procedure available.
Dig Deeper on Oracle database installation, upgrades and patches
Related Q&A from Maria Anderson
I have been trying to install Oracle 8.1.7 on SUSE Linux 9.0 and got the error: "Error in invoking target install of makefile /opt/oracle/...../*.mk." Continue Reading
Can I use /var/opt/oracle/oratab to specify listener information? Continue Reading
How many database instances can be created on an Oracle server with an installation drive containing 15 GB free space? Continue Reading