How to Patch WebLogic Server 12c
First of all, you have to update OPatch to the newest one for Fusion Middleware, then start to patch your WebLogic server. Here are the steps:
Check Current Version before Patching WebLogic Server
Several ways that can check current version of WebLogic server. The first way is to use WebLogic Scripting Tool (WLST).
[oracle@admin ~]$ $ORACLE_HOME/oracle_common/common/bin/wlst.sh
Initializing WebLogic Scripting Tool (WLST) ...
Jython scans all the jar files it can find at first startup. Depending on the system, this process may take a few minutes to complete, and WLST may not return a prompt right away.
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands
wls:/offline> print version
WebLogic Server 12.2.1.3.0
wls:/offline> exit()
Exiting WebLogic Scripting Tool.
Also, we can check the current release number in WebLogic Server Administration Console.
Please note that, patches that result only minor changes to WebLogic Server may not affect the release number, which is now 12.2.1.3.0 in this case.
Upload and Unzip Patches
Conventionally, we put patches in OPatch and then unzip them in that folder.
[oracle@admin ~]$ cd $PATCH_HOME
[oracle@admin OPatch]$ pwd
/Oracle/Middleware/Oracle_Home/OPatch
[oracle@admin OPatch]$ ll
...
-rwxr-xr-x 1 oracle oinstall 22514193 Jan 16 10:40 p28710939_122130_Generic.zip
...
[oracle@admin OPatch]$ unzip -q p28710939_122130_Generic.zip
[oracle@admin OPatch]$ ll
...
drwxr-x--- 4 oracle oinstall 67 Dec 21 14:29 28710939
...
-rwxr-xr-x 1 oracle oinstall 22514193 Jan 16 10:40 p28710939_122130_Generic.zip
...
List Current Inventory Before Patching WebLogic Server
[oracle@admin OPatch]$ opatch lsinventory
Oracle Interim Patch Installer version 13.9.4.0.0
Copyright (c) 2019, Oracle Corporation. All rights reserved.
Oracle Home : /Oracle/Middleware/Oracle_Home
Central Inventory : /home/oracle/oraInventory
from : /Oracle/Middleware/Oracle_Home/oraInst.loc
OPatch version : 13.9.4.0.0
OUI version : 13.9.3.0.0
Log file location : /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2019-01-16_14-00-10PM_1.log
OPatch detects the Middleware Home as "/Oracle/Middleware/Oracle_Home"
Lsinventory Output file location : /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/lsinv/lsinventory2019-01-16_14-00-10PM.txt
--------------------------------------------------------------------------------
Local Machine Information::
Hostname: admin.example.com
ARU platform id: 226
ARU platform description:: Linux x86-64
Interim patches (4) :
Patch 26355633 : applied on Mon Jan 14 16:45:21 CST 2019
Unique Patch ID: 21447583
Patch description: "One-off"
Created on 1 Aug 2017, 21:40:20 hrs UTC
Bugs fixed:
26355633
Patch 26287183 : applied on Mon Jan 14 16:45:07 CST 2019
Unique Patch ID: 21447582
Patch description: "One-off"
Created on 1 Aug 2017, 21:41:27 hrs UTC
Bugs fixed:
26287183
Patch 26261906 : applied on Mon Jan 14 16:44:44 CST 2019
Unique Patch ID: 21344506
Patch description: "One-off"
Created on 12 Jun 2017, 23:36:08 hrs UTC
Bugs fixed:
25559137, 25232931, 24811916
Patch 26051289 : applied on Mon Jan 14 16:44:37 CST 2019
Unique Patch ID: 21455037
Patch description: "One-off"
Created on 31 Jul 2017, 22:11:57 hrs UTC
Bugs fixed:
26051289
--------------------------------------------------------------------------------
OPatch succeeded.
Applying Patches
We change directory to the destination of patch, then do opatch apply.
[oracle@admin OPatch]$ cd 28710939
[oracle@admin 28710939]$ opatch apply
Oracle Interim Patch Installer version 13.9.4.0.0
Copyright (c) 2019, Oracle Corporation. All rights reserved.
Oracle Home : /Oracle/Middleware/Oracle_Home
Central Inventory : /home/oracle/oraInventory
from : /Oracle/Middleware/Oracle_Home/oraInst.loc
OPatch version : 13.9.4.0.0
OUI version : 13.9.3.0.0
Log file location : /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2019-01-16_14-04-28PM_1.log
OPatch detects the Middleware Home as "/Oracle/Middleware/Oracle_Home"
Verifying environment and performing prerequisite checks...
OPatch continues with these patches: 28710939
Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/Oracle/Middleware/Oracle_Home')
Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '28710939' to OH '/Oracle/Middleware/Oracle_Home'
ApplySession: Optional component(s) [ oracle.wls.cam.wlst, 12.2.1.3.0 ] , [ oracle.wls.cam.wlst, 12.2.1.3.0 ] , [ oracle.webservices.jrf, 12.2.1.3.0 ] , [ oracle.webservices.jrf, 12.2.1.3.0 ] , [ oracle.fmwconfig.common.wls.shared, 12.2.1.3.0 ] , [ oracle.wls.core.app.server.nativelib, 12.2.1.3.0 ] , [ oracle.jrf.tenancy.se, 12.2.1.3.0 ] , [ oracle.wls.rdmu, 12.2.1.3.0 ] , [ oracle.legacy_oc4j_xml_schemas, 12.2.1.3.0 ] , [ oracle.wls.server.mt.examples, 12.2.1.3.0 ] , [ oracle.jrf.tenancy.ee, 12.2.1.3.0 ] , [ oracle.webservices.wls.jaxrpc, 12.2.1.3.0 ] , [ oracle.jrf.tenancy, 12.2.1.3.0 ] not present in the Oracle Home or a higher version is found.
Patching component oracle.webservices.orawsdl, 12.2.1.3.0...
Patching component oracle.webservices.orawsdl, 12.2.1.3.0...
Patching component oracle.com.fasterxml.jackson.dataformat.jackson.dataformat.xml, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.dataformat.jackson.dataformat.xml, 2.7.9.0.0...
Patching component oracle.org.bouncycastle, 12.2.1.3.0...
Patching component oracle.org.bouncycastle, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.common.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.common.sharedlib, 12.2.1.3.0...
Patching component oracle.fmwconfig.common.wls.shared.internal, 12.2.1.3.0...
Patching component oracle.com.fasterxml.jackson.jaxrs.jackson.jaxrs.base, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.jaxrs.jackson.jaxrs.base, 2.7.9.0.0...
Patching component oracle.fmwconfig.common.config.shared, 12.2.1.3.0...
Patching component oracle.wls.shared.with.cam, 12.2.1.3.0...
Patching component oracle.wls.shared.with.cam, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.common, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.common, 12.2.1.3.0...
Patching component oracle.wls.evaluation.database, 12.2.1.3.0...
Patching component oracle.wls.evaluation.database, 12.2.1.3.0...
Patching component oracle.wls.core.app.server, 12.2.1.3.0...
Patching component oracle.wls.core.app.server, 12.2.1.3.0...
Patching component oracle.wls.core.app.server, 12.2.1.3.0...
Patching component oracle.webservices.base, 12.2.1.3.0...
Patching component oracle.webservices.base, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.ee.only.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.jrf.tenancy.ee.only.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.rcu, 12.2.1.3.0...
Patching component oracle.wls.rcu, 12.2.1.3.0...
Patching component oracle.wls.security.core.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.security.core.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.security.core.sharedlib, 12.2.1.3.0...
Patching component oracle.webservices.wls, 12.2.1.3.0...
Patching component oracle.webservices.wls, 12.2.1.3.0...
Patching component oracle.webservices.wls, 12.2.1.3.0...
Patching component oracle.commons.fileupload.commons.fileupload, 1.3.2.0.0...
Patching component oracle.commons.fileupload.commons.fileupload, 1.3.2.0.0...
Patching component oracle.com.fasterxml.jackson.jaxrs.jackson.jaxrs.json.provider, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.jaxrs.jackson.jaxrs.json.provider, 2.7.9.0.0...
Patching component oracle.wls.admin.console.en, 12.2.1.3.0...
Patching component oracle.wls.admin.console.en, 12.2.1.3.0...
Patching component oracle.wls.libraries, 12.2.1.3.0...
Patching component oracle.wls.libraries, 12.2.1.3.0...
Patching component oracle.wls.libraries, 12.2.1.3.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.annotations, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.annotations, 2.7.9.0.0...
Patching component oracle.wls.common.cam.wlst, 12.2.1.3.0...
Patching component oracle.wls.common.cam.wlst, 12.2.1.3.0...
Patching component oracle.com.fasterxml.jackson.module.jackson.module.jsonschema, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.module.jackson.module.jsonschema, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.module.jackson.module.jaxb.annotations, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.module.jackson.module.jaxb.annotations, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.databind, 2.7.9.1.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.databind, 2.7.9.1.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.core, 2.7.9.0.0...
Patching component oracle.com.fasterxml.jackson.core.jackson.core, 2.7.9.0.0...
Patching component oracle.wls.security.core, 12.2.1.3.0...
Patching component oracle.wls.wlsportable.mod, 12.2.1.3.0...
Patching component oracle.wls.http.pubsub.server, 12.2.1.3.0...
Patching component oracle.apache.commons.collections.mod, 3.2.0.0.2...
Patching component oracle.wls.common.cam, 12.2.1.3.0...
Patching component oracle.wls.workshop.code.completion.support, 12.2.1.3.0...
Patching component oracle.java.activation, 12.2.1.3.0...
Patching component oracle.wls.server.examples, 12.2.1.3.0...
Patching component oracle.apache.commons.lang.mod, 2.6.0.0.2...
Patching component oracle.java.xml.bind, 2.3.0.0.0...
Patching component oracle.java.servlet, 12.2.1.3.0...
Patching component oracle.wls.common.nodemanager, 12.2.1.3.0...
Patching component oracle.wls.shared.with.inst, 12.2.1.3.0...
Patching component oracle.wls.shared.with.coh.standalone, 12.2.1.3.0...
Patching component oracle.jaxb.impl, 2.3.0.0.0...
Patching component oracle.wls.admin.console.nonen, 12.2.1.3.0...
Patching component oracle.wls.clients, 12.2.1.3.0...
Patching component oracle.wls.shared.with.inst.sharedlib, 12.2.1.3.0...
Patching component oracle.wls.thirdparty.javax.json, 12.2.1.3.0...
Patching component oracle.wls.inst.only, 12.2.1.3.0...
Patching component oracle.jaxb.tools, 2.3.0.0.0...
Patching component oracle.jaxb.core, 2.3.0.0.0...
Patching component oracle.diagnostics.common, 12.2.1.3.0...
Patching component oracle.wls.weblogic.sca, 12.2.1.3.0...
Patching component org.codehaus.woodstox, 4.2.0.0.0...
Patching component oracle.wls.core.app.server.tier1nativelib, 12.2.1.3.0...
Patching component oracle.java.jaxws, 12.2.1.3.0...
Patch 28710939 successfully applied.
Log file location: /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2019-01-16_14-04-28PM_1.log
OPatch succeeded.
List Current Inventory After Patching WebLogic Server
[oracle@admin 28710939]$ opatch lsinventory
Oracle Interim Patch Installer version 13.9.4.0.0
Copyright (c) 2019, Oracle Corporation. All rights reserved.
Oracle Home : /Oracle/Middleware/Oracle_Home
Central Inventory : /home/oracle/oraInventory
from : /Oracle/Middleware/Oracle_Home/oraInst.loc
OPatch version : 13.9.4.0.0
OUI version : 13.9.3.0.0
Log file location : /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/opatch2019-01-16_14-06-16PM_1.log
OPatch detects the Middleware Home as "/Oracle/Middleware/Oracle_Home"
Lsinventory Output file location : /Oracle/Middleware/Oracle_Home/cfgtoollogs/opatch/lsinv/lsinventory2019-01-16_14-06-16PM.txt
--------------------------------------------------------------------------------
Local Machine Information::
Hostname: admin.example.com
ARU platform id: 226
ARU platform description:: Linux x86-64
Interim patches (5) :
Patch 28710939 : applied on Wed Jan 16 14:05:18 CST 2019
Unique Patch ID: 22540742
Patch description: "WLS PATCH SET UPDATE 12.2.1.3.190115"
Created on 21 Dec 2018, 14:25:48 hrs PST8PDT
Bugs fixed:
23076695, 23103220, 25387569, 25488428, 25580220, 25665727, 25750303
25800186, 25987400, 25993295, 26026959, 26080417, 26098043, 26144830
26145911, 26248394, 26267487, 26268190, 26353793, 26439373, 26473149
26499391, 26502060, 26547016, 26589850, 26608537, 26624375, 26626528
26731253, 26806438, 26828499, 26835012, 26929163, 26936500, 26985581
27055227, 27111664, 27117282, 27118731, 27131483, 27187631, 27213775
27234961, 27272911, 27284496, 27411153, 27417245, 27445260, 27469756
27486993, 27516977, 27561226, 27603087, 27617877, 27693510, 27803728
27819370, 27912485, 27927071, 27928833, 27934864, 27947832, 27948303
27988175, 28071913, 28103938, 28110087, 28138954, 28140800, 28142116
28149607, 28166483, 28171852, 28172380, 28311332, 28313163, 28319690
28360225, 28375173, 28375702, 28409586, 28503638, 28559579, 28594324
28626991, 28632521
Patch 26355633 : applied on Mon Jan 14 16:45:21 CST 2019
Unique Patch ID: 21447583
Patch description: "One-off"
Created on 1 Aug 2017, 21:40:20 hrs UTC
Bugs fixed:
26355633
Patch 26287183 : applied on Mon Jan 14 16:45:07 CST 2019
Unique Patch ID: 21447582
Patch description: "One-off"
Created on 1 Aug 2017, 21:41:27 hrs UTC
Bugs fixed:
26287183
Patch 26261906 : applied on Mon Jan 14 16:44:44 CST 2019
Unique Patch ID: 21344506
Patch description: "One-off"
Created on 12 Jun 2017, 23:36:08 hrs UTC
Bugs fixed:
25559137, 25232931, 24811916
Patch 26051289 : applied on Mon Jan 14 16:44:37 CST 2019
Unique Patch ID: 21455037
Patch description: "One-off"
Created on 31 Jul 2017, 22:11:57 hrs UTC
Bugs fixed:
26051289
--------------------------------------------------------------------------------
OPatch succeeded.
opatch lsinventory may be the only place that can assert the patch has been applied to WebLogic server successfully.
Check Current Version After Patching WebLogic Server
We can check the release number through WebLogic Scripting Tool.
[oracle@admin OPatch]$ $ORACLE_HOME/oracle_common/common/bin/wlst.sh
Initializing WebLogic Scripting Tool (WLST) ...
Jython scans all the jar files it can find at first startup. Depending on the system, this process may take a few minutes to complete, and WLST may not return a prompt right away.
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands
wls:/offline> print version
WebLogic Server 12.2.1.3.0
wls:/offline> exit()
Exiting WebLogic Scripting Tool.
From WLST, no change on displayed version of WebLogic. Let's check WebLogic Server Administrator Console.
Although we see no change on displayed version either, in the section of "Patch List" in the same page shows somewhat different now:
WLS PATCH SET UPDATE 12.2.1.3.190115
This is how we patch WebLogic server. We use OPatch to patch Fusion Middleware.