生产上经常会进行weblogic补丁升级操作,本文以升级补丁EJUW为例,weblogic版本为10.3.6.0.


Weblogic版本查询

weblogic版本查询方式:

1.命令方式1

cd /usr/weblogic/Oracle/Middleware/utils/bsu
./bsu.sh -prod_dir=/usr/weblogic/Oracle/Middleware/wlserver_10.3/ -status=applied -verbose -view

/usr/weblogic/Oracle/Middleware为weblogic安装目录

Weblogic10.3.6 EJUW补丁升级操作步骤_第1张图片

2.命令方式2

cd /usr/weblogic/Oracle/Middleware/wlserver_10.3/server/bin
source ./setWLSEnv.sh
java weblogic.version

Weblogic10.3.6 EJUW补丁升级操作步骤_第2张图片

3.web控台方式

在weblogic控制台主页 >服务器概要 >AdminServer >监视 >一般信息中也能查到版本

Weblogic10.3.6 EJUW补丁升级操作步骤_第3张图片


补丁下载

参考链接:https://blog.csdn.net/qshpeng/article/details/77494188


补丁安装

以下操作都在启动weblogic服务的应用用户下进行

cd /usr/weblogic/Oracle/Middleware/utils/bsu

如果有使用过bsu.sh,则会有cache_dir目录,否则请新建或执行bsu.sh生成。
上传patch至cache_dir目录并解压

unzip p20780171_1036_Generic_psu12.zip

图片.png

解压出来的jar名就是Patch ID,是后面安装的参数。


停止Admin和各server进程,确认无weblogic进程。


补丁安装:

cd ../
./bsu.sh -install -patch_download_dir=/usr/weblogic/Oracle/Middleware/utils/bsu/cache_dir -patchlist=EJUW -prod_dir=/usr/weblogic/Oracle/Middleware/wlserver_10.3 -verbose

Weblogic10.3.6 EJUW补丁升级操作步骤_第4张图片


启动weblogic,在启动日志中有已打补丁的信息。

Weblogic10.3.6 EJUW补丁升级操作步骤_第5张图片

确认修复的bug:

source /usr/weblogic/Oracle/Middleware/wlserver_10.3/server/bin/setWLSEnv.sh
java /usr/weblogic/Oracle/Middleware/wlserver_10.3/server/bin/weblogic.version

Weblogic10.3.6 EJUW补丁升级操作步骤_第6张图片

./bsu.sh -prod_dir=/usr/weblogic/Oracle/Middleware/wlserver_10.3/ -status=applied -verbose -view

Weblogic10.3.6 EJUW补丁升级操作步骤_第7张图片

控台查看:

Weblogic10.3.6 EJUW补丁升级操作步骤_第8张图片


启动Admin和各server进程。


内存溢出

Weblogic10.3.6 EJUW补丁升级操作步骤_第9张图片

在执行补丁安装过程中可能会报内存溢出错误:‘Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded’;解决办法:

view bsu.sh
MEM_ARGS="-Xms4096m -Xmx4096m"

编辑bsu.sh,将参数-Xms和-Xmx调大。


补丁卸载

新的补丁包安装时会与之前的补丁包有冲突,需卸载之前的升级包:

cd /usr/weblogic/Oracle/Middleware/utils/bsu
./bsu.sh -remove -patchlist=EJUW -prod_dir=/usr/weblogic/Oracle/Middleware/wlserver_10.3 -verbose

将安装命令的参数install改为remove,去掉patch_download_dir参数即是卸载命令。

卸载完再重新执行补丁升级步骤即可。

补丁卸载和安装都需要一定时间,请耐心等待。