weblogic的补丁升级
?
因为一些安全的原因,扫描发现一些应用的weblogic有补丁需要升级
我的weblogic版本有2种? weblogic 10MP2(10.0.2), Weblogic 11g(10.3.3)
操作系统有windows和AIX的
?
因为公司网络限制,服务器不能从网络直接update,
先在一个XP机器上安装了weblogic 10MP2和weblogic 10.3.3
然后用weblogic的 smart update 功能,直接从oracle网站获得了补丁文件,存放为一个文件夹 cache_dir
把整个文件夹放在服务器上安装weblogic的相应位置
windows操作系统直接用smart update,选择脱机工作,进入界面,发现已经有补丁程序了,然后直接应用,再从新启动服务完成
?
AIX操作系统,因为是远程操作,要先设置图形界面
打开Xmanager中的passive
然后在 AIX上设置
DISPLAY=192.168.1.1:0.0
export DISPLAY
Xclock? #该命令可验证,配置正确的话将出来一个时钟界面)
然后运行? sh bsu.sh
系统报错误:
JVMDUMP006I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError" - please wait.
JVMDUMP032I JVM requested Snap dump using '/bea/utils/bsu/Snap.20110506.185858.569582.0001.trc' in response to an event
JVMDUMP010I Snap dump written to /bea/utils/bsu/Snap.20110506.185858.569582.0001.trc
JVMDUMP032I JVM requested Heap dump using '/cis/utils/bsu/heapdump.20110506.185858.569582.0002.phd' in response to an event
JVMDUMP010I Heap dump written to /bea/utils/bsu/heapdump.20110506.185858.569582.0002.phd
JVMDUMP032I JVM requested Java dump using '/bea/utils/bsu/javacore.20110506.185858.569582.0003.txt' in response to an event
JVMDUMP010I Java dump written to /bea/utils/bsu/javacore.20110506.185858.569582.0003.txt
JVMDUMP013I Processed dump event "systhrow", detail "java/lang/OutOfMemoryError".
Exception in thread "main" java.lang.OutOfMemoryError
??????? at java.lang.Class.lookupCachedMethod(Class.java:2194)
??????? at java.lang.Class.getMethod(Class.java:797)
??????? at com.bea.cie.common.dao.xbean.XBeanDataHandler.isValueSet(XBeanDataHandler.java:929)
??????? at com.bea.cie.common.dao.xbean.XBeanDataHandler.getValueFromObject(XBeanDataHandler.java:560)
??????? at com.bea.cie.common.dao.xbean.XBeanDataHandler.getSimpleValue(XBeanDataHandler.java:402)
??????? at com.bea.plateng.patch.dao.cat.PatchDependency.getRule(PatchDependency.java:48)
??????? at com.bea.plateng.patch.dao.cat.PatchCatalogHelper.getInvalidatedPatchMap(PatchCatalogHelper.java:1533)
??????? at com.bea.plateng.patch.PatchSystem.updatePatchCatalog(PatchSystem.java:436)
??????? at com.bea.plateng.patch.PatchSystem.refresh(PatchSystem.java:130)
??????? at com.bea.plateng.patch.PatchSystem.<init>(PatchSystem.java:114)
??????? at com.bea.plateng.patch.PatchSystem.<clinit>(PatchSystem.java:41)
??????? at java.lang.J9VMInternals.initializeImpl(Native Method)
??????? at java.lang.J9VMInternals.initialize(J9VMInternals.java:196)
??????? at com.bea.plateng.patch.PatchPreferences.<init>(PatchPreferences.java:61)
??????? at com.bea.plateng.patch.PatchPreferences.getInstance(PatchPreferences.java:68)
??????? at com.bea.plateng.patch.gui.PatchMediator.<init>(PatchMediator.java:298)
??????? at java.lang.Class.newInstanceImpl(Native Method)
??????? at java.lang.Class.newInstance(Class.java:1328)
??????? at com.bea.plateng.patch.gui.PatchGUIHelper.startGui(PatchGUIHelper.java:107)
??????? at com.bea.plateng.patch.Patch.main(Patch.java:338)
该问题是因为java的内存设置过小,需要设置java的内存,
#vi bsu.sh
修改如下:
#!/bin/sh
JAVA_HOME="/usr/java5"
"$JAVA_HOME/bin/java" -jar -Xms1024m -Xmx2048m patch-client.jar $*
重新运行,顺利打开,安装完成后,重新启动weblogic相关应用
?
注意的问题:
我在安装的时候,用的普通user的时候遇到问题,换成了root安装,安装完毕后,记得用命令
chown -R? user:usergrp foldername 来更改文件夹的用户和用户组,以便服务可以顺利启动
?
另外有weblogic816
操作系统有linux的
首先从oracle下载相关的补丁包 后缀为.jar的文件和 .war的文件
一般每个补丁文件都有说明
补丁包放在服务器上的一个位置上,比如/wlspatch
在每个domain下面的 startWebLogic.sh, 在里面增加一个patchpath
记得patchpath一定要在classpath前面
如我的? 这个放在靠后的位置
PATCH_CLASSPATH="/wlspatch/Bug10276172_810sp6.jar:/wlspatch/Bug9894307_810sp6.jar:/wlspatch/Bug8726070_810sp6.jar:/wlspatch/bug8199250_810sp6.jar:/wlspatch/CR381176_810sp6.jar:/wlspatch/Bug7835091_810sp6.jar"
CLASSPATH="${PATCH_CLASSPATH}${PRE_CLASSPATH}${WEBLOGIC_CLASSPATH}${CLASSPATHSEP}${CLASSPATH}"
重新启动weblogic就可以了
war文件有说明打到相应的位置下。