温馨提示×

Linux系统中WebLogic如何升级

小樊
36
2025-12-24 08:05:50
栏目: 智能运维

Linux下WebLogic升级操作指南

一 升级策略与前置检查

  • 明确目标:是做补丁集/CPU/PSU修复,还是跨版本的大版本升级(如 10.3.6 → 12.2.x/14.x)。跨版本通常需新建 Oracle Home,不建议就地覆盖。同一Administrative Domain内的所有服务器实例必须保持相同主版本与次版本;集群内所有实例需处于相同补丁集级别。域内的管理服务器的补丁集级别需高于或等于受管服务器。以上为官方兼容性要求,升级前务必核对。

二 补丁级升级步骤 适用于 11g 与 12c

  • 通用准备
    • 完全停止 WebLogic(建议使用stopWebLogic.sh或通过系统服务停止),并做好全量备份(域目录、配置、应用、数据库、密钥库等)。
    • 确认 JDK 版本满足目标补丁要求,准备好对应补丁介质与 OPatch/bsu 工具。
  • 11g(WebLogic 10.3.6 等)使用 bsu 打补丁
    • 设置产品目录:例如 export WLS_HOME=/opt/weblogic/wls1036_x64/wlserver_10.3
    • 将补丁 ZIP 解压到:${WLS_HOME}/utils/bsu/cache_dir
    • 查看已打补丁:
      • ${WLS_HOME}/utils/bsu/bsu.sh -prod_dir=${WLS_HOME}/wlserver_10.3 -status=applied -verbose -view
    • 如存在冲突补丁,先卸载(示例补丁 ID 为 RVBS):
      • ${WLS_HOME}/utils/bsu/bsu.sh -remove -patchlist=RVBS -prod_dir=${WLS_HOME}/wlserver_10.3
    • 安装新补丁(示例补丁 ID 为 FMJJ):
      • ${WLS_HOME}/utils/bsu/bsu.sh -install -patchlist=FMJJ -prod_dir=${WLS_HOME}/wlserver_10.3 -verbose
    • 验证结果:
      • ${WLS_HOME}/utils/bsu/bsu.sh -report -output_format=text | grep --color “FMJJ”
  • 12c(WebLogic 12.1.3 等)使用 OPatch 打补丁
    • 设置目录:例如 export ORACLE_HOME=/opt/weblogic/wls1213_x64export PATCH_TOP=${ORACLE_HOME}/OPatch
    • 解压补丁到目录(示例补丁 p26519417_121300_Generic.zip)
    • 进入解压目录执行:
      • ${PATCH_TOP}/opatch apply
    • 如存在冲突补丁(示例 ID 为 25388793),先回退:
      • ${PATCH_TOP}/opatch rollback -id 25388793
    • 验证结果:
      • ${ORACLE_HOME}/OPatch/opatch lspatches -bugs | grep --color “12.1.3.0.171017”
  • 启动与回归
    • 启动服务(如 startWebLogic.sh),检查Admin/受管服务器状态、应用连通性与关键业务回归。

三 跨版本升级步骤 适用于 10.3.6/12.1.3 升级至 12.2.x/14.x

  • 规划与评估
    • 阅读目标版本的Upgrade Guide,评估API/持久化/生成类等兼容性影响;必要时对应用做适配与回归测试。
  • 安装新版本
    • 使用 Java 执行安装器进行静默安装(示例):
      • java -jar fmw_14.1.1.0.0_wls_lite_generic.jar -silent -responseFile /path/wls.rsp -invPtrLoc /path/oraInst.loc
    • 安装完成后得到新的 Oracle Home
  • 域升级与迁移
    • 使用 WebLogic Upgrade Wizard 对旧域进行升级转换(仅升级配置与元数据,不覆盖应用)。
    • 将应用从旧域迁移到新域(建议先部署到新域的测试环境验证)。
  • 启动与验证
    • 启动新域的管理服务器受管服务器,逐项验证集群、数据源、JMS、安全、部署等是否正常。

四 回退与常见问题处理

  • 回退方案
    • 补丁级回退:
      • 11g 使用 bsu.sh -remove -patchlist=PATCH_ID -prod_dir=… 回退指定补丁;
      • 12c 使用 opatch rollback -id=BUG_ID 回退补丁。
    • 跨版本回退:
      • 保持旧环境完整备份可启动状态;必要时切回旧 Oracle Home/域 并恢复备份。
  • 常见问题
    • 冲突补丁:安装前用 lspatches/bsu 状态检查,按提示先卸载冲突补丁再安装。
    • 工具依赖:OPatch 执行失败若提示 fuser 不可用,安装 psmisc 包(如 yum install -y psmisc)后重试。
    • JVM 内存不足:编辑 bsu.sh 中的 MEM_ARGS(如 -Xmx 调大)后重试大型补丁安装。

0