WebLogic Server添加删除补丁操作

WebLogic Server添加删除补丁操作

0、查看当前weblogic版本

[weblogic@localhost bin]$ cd /data/bea/weblogic11/wlserver_10.3/server/bin
[weblogic@localhost bin]$ source ./setWLSEnv.sh
### Your environment has been set.

[weblogic@localhost bin]$ java weblogic.version

###WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050

###Use 'weblogic.version -verbose' to get subsystem information

###Use 'weblogic.utils.Versions' to get version information for all modules

显示的10.3.6.0即为版本号

1 、补丁下载

1)访问、登录Oracle 知识库:http://support.oracle.com

2)根据补丁号或者WebLogic版本号,进行选择,并下载WebLogic Server补丁

3)WebLogic 10.3.6对应的补丁包

  1.  p20780171_1036_Generic.zip

  2.  p22248372_1036012_Generic.zip

  并需要按照前后顺序升级

4)WebLogic 10.0 MP1对应的补丁包为:p22248372_1001_Generic.zip

补充说明: 

  p20780171_1036_Generic.zip  文件中有 EJUW.jar , patch-catalog_22958.xml , README.txt 三个文件,

  p22248372_1036012_Generic.zip文件中有 ZLNA.jar , patch-catalog_23501.xml , README.txt 三个文件

如果已打过EJUW和ZLNA补丁, 现在想安装最新的FMJJ补丁,需要把前面2个补丁都卸载才行。一定要按序先卸载ZLNA,再卸载EJUW. 

2、补丁安装注意事项

1)确定补丁类型,不同补丁类型有不同的安装方法

2)确定WebLogic版本以及其已经安装的补丁集

3)一定要查看Oracle给出的README补丁说明文件(补丁压缩包中会附带)

4)补丁安装前做好WebLogic的备份

5)停掉在此WebLogic版本下的所有java进程

3、补丁安装方法

3.1 版本查询

3.1.1  方法一 显示最详细,且可看到已打补丁

cd /data/bea/weblogic11/utils/bsu

./bsu.sh  -view -status=applied -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

3.1.2  方法二 

[weblogic@localhost bin]$ cd /data/bea/weblogic11/wlserver_10.3/server/bin
[weblogic@localhost bin]$ source ./setWLSEnv.sh 
### Your environment has been set.

[weblogic@localhost bin]$ java weblogic.version

3.1.3  方法三 

查看user_projects/domains/base_domain/config/config.xml文件第4行(不行换观测的情况下)

<domain-version>10.3.6.0</domain-version>

3.1.4  方法四 

如果weblogic AdminServer管理服务器已启动,可通过前台网页控制台查看 (页脚会看到10.3.X.X)

3.2 补丁安装

1)以weblogic用户身份登录linux os,切换至/data/bea/weblogic11/utils/bsu目录,查看是否存在/data/bea/weblogic11/utils/bsu/cache_dir目录,没有的话,需要手工创建(mkdir cache_dir)。

2)将补丁包上传至/data/bea/weblogic11/utils/bsu/cache_dir目录,本文以WebLogic 10.0 MP1为例,解压补丁包:unzip p22248372_1001_Generic.zip,解压完后效果如下. (当然最好解压完后把zip包删掉再升级)

备注:在打补丁时,可能会遇到内存溢出的问题;则需要调整bsu.sh脚本,将内存调大,一般调整到2G即可。

3)修改patch-catalog_22958.xml文件名,去掉_22958即可(您也可执行命令 mv patch-catalog_22958.xml patch-catalog.xml)

4)切换至bsu目录,执行补丁安装命令:

./bsu.sh -install -patchlist=EJUW -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

上面语句的./bus.sh 参数解释如下

-参数名 中文名 参数值 额外说明
-install 安装 无参 固定写法
-patchlist jar包名 EJUW 您需要修改成对应jar包名
-prod_dir weblogic目录 /data/bea/weblogic11/wlserver_10.3 您需要修改成对应路径
-verbose 显示详情 无参 固定写法

也可以使用以下语句

./bsu.sh -install -patch_download_dir=/data/bea/weblogic11/utils/bsu/cache_dir -patchlist=EJUW -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

补充说明: -patch_download_dir这个参数以前是加的,后来发现不加也没有关系.

5)查看版本情况,检查升级是否正常

6)重新启动WebLogic服务,打完补丁后重启等待server重启会需要非常漫长的5到10分钟的启动时间,这是正常的,请耐心等待.如下图:

3.3 查看已打补丁情况

cd /data/bea/weblogic11/utils/bsu

./bsu.sh  -view -status=applied -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

以下为本人打完最新补丁FMJJ后的输出:

ProductName:       WebLogic Server
ProductVersion:    10.3 MP6
Components:        WebLogic Server/Core Application Server,WebLogic Server/Admi
                   nistration Console,WebLogic Server/Configuration Wizard and 
                   Upgrade Framework,WebLogic Server/Web 2.0 HTTP Pub-Sub Serve
                   r,WebLogic Server/WebLogic SCA,WebLogic Server/WebLogic JDBC
                    Drivers,WebLogic Server/Third Party JDBC Drivers,WebLogic S
                   erver/WebLogic Server Clients,WebLogic Server/WebLogic Web S
                   erver Plugins,WebLogic Server/UDDI and Xquery Support,WebLog
                   ic Server/Evaluation Database,WebLogic Server/Workshop Code 
                   Completion Support
BEAHome:           /data/bea/weblogic11
ProductHome:       /data/bea/weblogic11/wlserver_10.3
PatchSystemDir:    /data/bea/weblogic11/utils/bsu
PatchDir:          /data/bea/weblogic11/patch_wls1036
Profile:           Default
DownloadDir:       /data/bea/weblogic11/utils/bsu/cache_dir
JavaVersion:       1.6.0_29
JavaVendor:        Sun


Patch ID:          FMJJ
PatchContainer:    FMJJ.jar
Checksum:          591477727
Severity:          optional
Category:          General
CR/BUG:            26519424
Restart:           true
Description:       WLS PATCH SET UPDATE 10.3.6.0.171017
WLS PATCH SET UPDATE 10
                   .3.6.0.171017

3.3 补丁卸载

cd /data/bea/weblogic11/utils/bsu

./bsu.sh -remove -patchlist=EJUW -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

4、总结打补丁最常用三语句 (查看,卸载,安装)

./bsu.sh  -view -status=applied      -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

./bsu.sh -remove -patchlist=EJUW  -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

./bsu.sh -install -patchlist=EJUW    -prod_dir=/data/bea/weblogic11/wlserver_10.3 -verbose

5、遇见异常

异常一

Checking for conflicts................Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded

这是由于/data/bea/weblogic11/utils/bsu/bsu.sh配置的内存不够用导致,

解决方法,修改bsu.sh文件第5行的MEM_ARGS="-Xms256m -Xmx512m" 调大成 MEM_ARGS="-Xms2048m -Xmx2048m"  注意更新完补丁后改回去

异常二

Checking for conflicts..............
Conflict(s) detected - resolve conflict condition and execute patch installation again
Conflict condition details follow:
Patch FMJJ is mutually exclusive and cannot coexist with patch(es): ZLNA

这是由于旧补丁未卸载完全导致的,之前装过EJUW.jar和ZLNA.jar(这两个jar要一起打,是一个整体),如果只移除EJUW.jar,现在想安装最新的补丁FMJJ.jar,需要把前面2个补丁都卸载才行. 参考3.3章节, 一定要按序先卸载ZLNA,再卸载EJUW, 不然就会报下面的异常三。

异常三

[weblogic@dwxapptest bsu]$ ./bsu.sh -remove -patchlist=EJUW -prod_dir=/data/bea/weblogic/wls/wlserver_10.3 -verbose
Checking for conflicts......................
Conflict(s) detected - resolve conflict condition and execute patch removal again
Conflict condition details follow:
The selected patch cannot be removed until the following patch(es) are removed first: ZLNA

注意补丁顺序, 因为ZLNA的补丁版本比EJUW版本小, 我们需要安照先进先出原则, 所以先安装的ZLNA移除掉后,再移除EJUW即可 。

异常四 (20190827)

该小段的使用目录和文章总体目录不一致, 因为是很久以后其它服务器上发生的问题 ,请注意区分.

encountered unrecognized patch id:MXLE  (遇到无法识别的补丁程序 ID : MXLE) 

对比了失败和成功的两台服务器,执行./bsu.sh  -view -status=applied -prod_dir=/data/weblogic/wls/wlserver_10.3 -verbose 发现只有DownloadDir不一致. 于是执行时强制指定DownloadDir参数如下,竟然成功了。

./bsu.sh -install -patch_download_dir=/data/weblogic/wls/utils/bsu/cache_dir -patchlist=MXLE -prod_dir=/data/weblogic/wls/wlserver_10.3 -verbose
检查冲突.....

网上还有人提及10.3.6.0 的weblogic版本中bsu版本过低(小于3.3.0.0)也会导致以上现象, 但我的机器上执行 bsu.sh -version 得到的结果还是3.3.0.0的,排除此干扰.  

诡异的encountered unrecognized patch id:FMJJ,看不见的因果==>https://blog.csdn.net/killvoon/article/details/79011826

Weblogic 补丁升级慢==>http://blog.itpub.net/30327022/viewspace-2564722/

 

 

原文地址:https://www.cnblogs.com/chenshengkai/p/13397548.html