Ubuntu上WebLogic更新升级流程(以补丁更新为例,版本升级需参考官方版本升级路径)
环境检查
JAVA_HOME环境变量指向正确路径(如/usr/lib/jvm/java-8-oracle)。java -cp $DOMAIN_HOME/wlserver/server/lib/weblogic.jar weblogic.version命令查看),并查阅Oracle官方文档确认目标版本与当前版本的兼容性(如10.3.6升级至12.2.1.4需满足中间版本过渡要求)。备份关键数据
/home/weblogic/bea/user_projects/domains/mydomain),包含配置文件、应用程序、日志等。/home/weblogic/bea/middleware),防止升级失败可回滚。停止WebLogic服务
bin目录(如/home/weblogic/bea/user_projects/domains/mydomain/bin),执行./stopWebLogic.sh停止管理服务器;若有托管服务器,需逐一停止(可通过ps -ef | grep weblogic查看所有WebLogic进程,用kill -9 <PID>强制终止残留进程)。下载补丁包
登录Oracle官方网站,进入“My Oracle Support”页面,搜索对应WebLogic版本的补丁集更新(PSU)或安全补丁(如p35586779_1036_generic.zip),下载适用于Linux环境的压缩包。
上传补丁包
使用scp或FTP工具将补丁包上传至Ubuntu服务器的临时目录(如/tmp),避免直接上传至WebLogic安装目录。
创建缓存目录
进入WebLogic安装目录下的utils/bsu目录(如/home/weblogic/bea/middleware/utils/bsu),创建缓存目录用于存放补丁包:
mkdir -p /home/weblogic/bea/middleware/utils/bsu/cache_dir
解压补丁包
将下载的补丁包复制至缓存目录并解压(如p35586779_1036_generic.zip):
cp /tmp/p35586779_1036_generic.zip /home/weblogic/bea/middleware/utils/bsu/cache_dir/
cd /home/weblogic/bea/middleware/utils/bsu/cache_dir/
unzip p35586779_1036_generic.zip
解压后会生成补丁JAR文件(如p35586779_1036_Generic.jar),其名称即为Patch ID(可通过ls命令查看)。
修改BSU工具内存参数
编辑bsu.sh脚本(位于utils/bsu目录),调整MEM_ARGS参数以增加内存(避免安装过程中内存溢出):
vi bsu.sh
找到MEM_ARGS行,修改为:
MEM_ARGS="-Xms2048m -Xmx4096m"
保存并退出(:wq)。
查看当前已安装补丁(可选)
执行以下命令查看当前WebLogic已安装的补丁列表,确认无冲突补丁:
cd /home/weblogic/bea/middleware/utils/bsu/
./bsu.sh -view -status=applied -prod_dir=/home/weblogic/bea/middleware/wlserver_10.3
(-prod_dir参数需指向WebLogic安装目录下的wlserver文件夹,如wlserver_10.3或wlserver)。
安装新补丁
执行以下命令安装补丁(以Patch ID为p35586779_1036_generic为例):
./bsu.sh -install -patch_download_dir=/home/weblogic/bea/middleware/utils/bsu/cache_dir -patchlist=p35586779 -prod_dir=/home/weblogic/bea/middleware/wlserver_10.3
-patch_download_dir:指定补丁包存放目录(即缓存目录)。-patchlist:指定要安装的补丁ID(无需后缀.jar)。-prod_dir:指定WebLogic安装目录。处理依赖补丁(如有)
若补丁要求先卸载旧补丁,需先执行卸载命令(如卸载Patch ID为E7HI的补丁):
./bsu.sh -remove -patchlist=E7HI -prod_dir=/home/weblogic/bea/middleware/wlserver_10.3
卸载完成后,再重新执行安装命令。
启动WebLogic服务
进入域的bin目录,执行./startWebLogic.sh启动管理服务器;若有托管服务器,需启动托管服务器(如./startManagedWebLogic.sh mymanagedserver t3://localhost:7001)。
检查WebLogic版本
http://<服务器IP>:7001/console),在“首页”->“关于”中查看WebLogic版本是否更新。wlserver/server/lib目录):java -cp weblogic.jar weblogic.version
输出应显示目标版本(如10.3.6.0更新至10.3.6.1)。验证应用程序
访问部署的应用程序(如http://<服务器IP>:7001/myapp),检查功能是否正常;查看域日志(/home/weblogic/bea/user_projects/domains/mydomain/logs/mydomain.log),确认无错误信息。
/tmp目录下的补丁包及解压文件,释放磁盘空间。servers/<服务器名称>/cache、servers/<服务器名称>/tmp、servers/<服务器名称>/stage目录),然后重启服务器。注意事项:
config.sh升级配置向导,而非仅打补丁。