{"id":129,"date":"2015-11-06T18:12:47","date_gmt":"2015-11-06T17:12:47","guid":{"rendered":"http:\/\/anjo.pt\/wp\/keyword-oracle\/?p=129"},"modified":"2015-11-17T20:27:22","modified_gmt":"2015-11-17T19:27:22","slug":"oracle-october-2015-cpu-quick-and-dirty-install-on-11-2-0-4-and-12-1-0-2","status":"publish","type":"post","link":"https:\/\/anjo.pt\/keyword-oracle\/2015\/11\/06\/oracle-october-2015-cpu-quick-and-dirty-install-on-11-2-0-4-and-12-1-0-2\/","title":{"rendered":"Oracle October 2015 CPU &#8211; quick and dirty install on 11.2.0.4 and 12.1.0.2"},"content":{"rendered":"<p>[Update 17.11.2015 &#8211; Thanks\u00a0Lars Johan Ulveseth for the extra testing and comment &#8211; <a href=\"https:\/\/anjo.pt\/keyword-oracle\/2015\/11\/06\/oracle-october-2015-cpu-quick-and-dirty-install-on-11-2-0-4-and-12-1-0-2\/#tc-comment-title\">see below<\/a>. In fact I&#8217;ve only tested the PSU installation on a non-CDB 12c database. There is a missing step, added now, when you are in a multitenant configuration with pluggable databases. Script updated based on Lars comments.]<\/p>\n<p>Following my <a href=\"https:\/\/anjo.pt\/keyword-oracle\/2015\/01\/30\/oracle-january-2015-cpu-quick-and-dirty-install-on-11-2-0-4-and-12-1-0-2\/\">January post<\/a>, here are basic instructions to install the latest Oracle security patch. While one should always read the documentation, below you can find how to install CPU Oct 2015\u00a0 on single instance. Please count about 5 minutes downtime on your database (a bit more if it is the first time you are doing this).<\/p>\n<p>If you are single instance database (no RAC) and either 11.2.0.4 or 12.1.0.2 here are the quick summary\u00a0of the installation. Tested on Linux and AIX:<\/p>\n<h4>Oracle 12.1.0.2 &#8211; October\u00a02015 CPU installation<\/h4>\n<p><strong>OPatch<\/strong>: You need to <span style=\"text-decoration: underline;\">update<\/span> the OPatch tool, minimum version is\u00a012.1.0.1.7. <a href=\"https:\/\/updates.oracle.com\/download\/6880880.html\" target=\"_blank\">Direct download from Oracle support<\/a>.<\/p>\n<p><strong>Bundle 12.1.0.2 &#8211; Patch 21520444 &#8211;\u00a0Combo OJVM PSU 12.1.0.2.5 and Database PSU 12.1.0.2.5 for UNIX<\/strong><\/p>\n<ul>\n<li>Patch 21359755 &#8211; Database Patch Set Update 12.1.0.2.5 (Oct2015) &#8211;&gt; RAC-Rolling Installable<\/li>\n<li>Patch 21555660 &#8211; Oracle JavaVM Component 12.1.0.2.5 Database PSU (OCT2015) &#8211;&gt; Non RAC-Rolling Installable<\/li>\n<\/ul>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nexport PATCH_LOC=&quot;\/tmp&quot;\r\n<\/pre>\n<p>1. Download + Upgrade OPatch (<a href=\"https:\/\/updates.oracle.com\/download\/6880880.html\" target=\"_blank\">Opatch download direct link<\/a>)<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nunzip ${PATCH_LOC}\/p6880880_121010_Linux-x86-64.zip -d $ORACLE_HOME\r\n<\/pre>\n<p>2. Stop database+listeners+agent<\/p>\n<p>3. Apply DB PSU (21359755 ) but do NOT run DB PSU post install steps<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd ${PATCH_LOC}\r\nunzip p2*\r\ncd 2*\r\ncd 21359755\/\r\n$ORACLE_HOME\/OPatch\/opatch apply\r\n<\/pre>\n<p>3. Apply OJVM PSU patch<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd ..\/21555660\/\r\n$ORACLE_HOME\/OPatch\/opatch apply\r\n<\/pre>\n<p>4. Restart database [and open pluggable databases] in upgrade mode<\/p>\n<pre class=\"brush: sql; title: ; notranslate\" title=\"\">\r\nSQL&gt; startup upgrade;\r\nSQL&gt; alter pluggable database all open upgrade;\r\n<\/pre>\n<p>5. Run post install steps<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd $ORACLE_HOME\/OPatch\r\n.\/datapatch -verbose\r\n<\/pre>\n<p>6. Restart database [and open pluggable databases] in normal mode<\/p>\n<pre class=\"brush: sql; title: ; notranslate\" title=\"\">\r\nSQL&gt; shutdown;\r\nSQL&gt; startup;\r\nSQL&gt; alter pluggable database all open;\r\n<\/pre>\n<pre><\/pre>\n<hr \/>\n<h4>Oracle 11.2.0.4 &#8211; October\u00a02015 CPU installation<\/h4>\n<p><strong>Bundle 11.2.0.4 &#8211; Patch 21744335 &#8211;\u00a0Combo OJVM PSU 11.2.0.4.5 and Database SPU 11.2.0.4 (CPUOct2015)<\/strong><\/p>\n<ul>\n<li>Patch 21352646 &#8211; Database Security Patch Update 11.2.0.4.0 (CPUOCT2015) &#8211;&gt; RAC-Rolling Installable<\/li>\n<li>Patch 21555791 &#8211; Oracle JavaVM Component 11.2.0.4.5 Database PSU (OCT2015) &#8211;&gt; Non RAC-Rolling Installable<\/li>\n<\/ul>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\nexport PATCH_LOC=&quot;\/tmp&quot;\r\ncd ${PATCH_LOC}\r\nunzip p2*.zip\r\ncd 2*\r\n<\/pre>\n<p>1. Shutdown databases and services<br \/>\n2.\u00a0Apply DB PSU (21352646) but do NOT run DB PSU post install steps<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd 21352646\r\n$ORACLE_HOME\/OPatch\/opatch napply -skip_subset -skip_duplicate\r\n<\/pre>\n<p>3. Apply OJVM PSU patch<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd ..\/21555791\/\r\n$ORACLE_HOME\/OPatch\/opatch apply\r\n<\/pre>\n<p>4. Run the OJVM PSU post install steps followed by the DB PSU (or equivalent) post install steps.<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd $ORACLE_HOME\/sqlpatch\/21555791\r\nsqlplus \/ as sysdba \r\n<\/pre>\n<pre class=\"brush: sql; title: ; notranslate\" title=\"\">\r\nSQL&gt; startup upgrade\r\nSQL&gt; @postinstall.sql\r\nSQL&gt; shutdown immediate\r\nSQL&gt; exit;\r\n<\/pre>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\r\ncd $ORACLE_HOME\/rdbms\/admin\r\n$ sqlplus \/ as sysdba\r\n<\/pre>\n<pre class=\"brush: sql; title: ; notranslate\" title=\"\">\r\nSQL&gt; startup\r\nSQL&gt; @catbundle.sql cpu apply\r\nSQL&gt; @utlrp.sql\r\nSQL&gt; exit;\r\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[Update 17.11.2015 &#8211; Thanks\u00a0Lars Johan Ulveseth for the extra testing and comment &#8211; see below. In fact I&#8217;ve only tested the PSU installation on a non-CDB 12c database. There is a missing step, added now, when you are in a multitenant configuration with pluggable databases. Script updated based on Lars comments.] Following my January post, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,17,6,2,7,19,9],"tags":[],"class_list":{"0":"post-129","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-aix","7":"category-opatch","8":"category-oracle","9":"category-oracle-11g","10":"category-oracle-12c","11":"category-psu","12":"category-security","13":"czr-hentry"},"_links":{"self":[{"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/posts\/129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/comments?post=129"}],"version-history":[{"count":6,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/posts\/129\/revisions"}],"predecessor-version":[{"id":152,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/posts\/129\/revisions\/152"}],"wp:attachment":[{"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/media?parent=129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/categories?post=129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/anjo.pt\/keyword-oracle\/wp-json\/wp\/v2\/tags?post=129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}