温馨提示×

Linux版WebLogic如何备份

小樊
32
2025-12-26 06:25:52
栏目: 智能运维

Linux版 WebLogic 备份实操指南

一 备份范围与准备

  • 明确备份范围:优先保护 域目录 $DOMAIN_HOME(含配置与运行时数据)、应用目录(若为文件系统部署)、以及 外部数据库(JDBC 数据源所指向的库)。域目录常见路径如:/home/weblogic/Oracle/Middleware/user_projects/domains/<domain_name>//weblogic/domains/<domain_name>/
  • 选择备份时机:为保证一致性,建议在 低峰时段 进行;对一致性要求高的场景先 停止 WebLogic,或确保无部署/配置变更操作。
  • 准备与权限:以具备 WebLogic 管理员或 root 权限的账号执行;提前规划 备份存放路径保留周期,并准备 远程拷贝对象存储 等异地存放方案。

二 手动备份步骤

  • 停止服务(可选但推荐):
    • 方式一:在域目录执行 $DOMAIN_HOME/bin/stopWebLogic.sh
    • 方式二:使用 WLST 连接管理服务器后执行 shutdown()
  • 备份域目录(核心):
    • 命令示例:tar -czvf /opt/backup/weblogic_domain_$(date +%F).tar.gz -C $DOMAIN_HOME .
  • 备份应用目录(若非由控制台/自动化部署管理):
    • 示例:tar -czvf /opt/backup/weblogic_apps_$(date +%F).tar.gz /opt/weblogic/oracle/Middleware/user_projects/applications
  • 备份数据库(如使用外部数据库):
    • Oracle 示例:expdp system/password@SID directory=DATA_PUMP_DIR dumpfile=backup_$(date +%F).dmp logfile=expdp_$(date +%F).log
  • 备份日志(可选):
    • 示例:tar -czvf /opt/backup/weblogic_logs_$(date +%F).tar.gz $DOMAIN_HOME/servers//logs**
  • 拷贝到安全位置(可选):
    • 示例:scp /opt/backup/weblogic_domain_$(date +%F).tar.gz user@remote:/backup/
  • 说明:缓存与临时目录(如 cache/、tmp/)通常无需纳入长期备份。

三 自动化备份脚本与定时任务

  • 示例脚本(保留最近 7 天,含域与应用,按需扩展数据库与日志):
#!/bin/bash
# 配置
DOMAIN_HOME="/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain"
APPS_DIR="/opt/weblogic/oracle/Middleware/user_projects/applications"
BACKUP_DIR="/opt/backup/weblogic"
DATE=$(date +%F_%H%M%S)
KEEP_DAYS=7

# 创建备份目录
mkdir -p "$BACKUP_DIR"

# 停止服务(可选)
"$DOMAIN_HOME/bin/stopWebLogic.sh" || true

# 备份域
tar -czvf "$BACKUP_DIR/domain_$DATE.tar.gz" -C "$DOMAIN_HOME" .

# 备份应用(可选)
[ -d "$APPS_DIR" ] && tar -czvf "$BACKUP_DIR/apps_$DATE.tar.gz" -C "$APPS_DIR" .

# 启动服务(可选)
"$DOMAIN_HOME/bin/startWebLogic.sh" &

# 清理旧备份
find "$BACKUP_DIR" -type f -mtime +$KEEP_DAYS -name "*.tar.gz" -delete
  • 定时任务(每天 02:00 执行):
    • 执行 crontab -e,添加:0 2 * * * /path/to/backup_weblogic.sh >/var/log/backup_weblogic.log 2>&1
  • 提示:如采用 WLST 自动化,可将导出/导入配置纳入脚本统一编排。

四 恢复步骤与验证

  • 停止服务:$DOMAIN_HOME/bin/stopWebLogic.sh
  • 恢复域目录:
    • 建议先备份当前目录,再恢复:tar -xzvf /opt/backup/weblogic_domain_YYYY-MM-DD_HHMMSS.tar.gz -C /(或解压到临时目录后 rsync 覆盖)
  • 恢复应用(如适用):tar -xzvf /opt/backup/weblogic_apps_YYYY-MM-DD_HHMMSS.tar.gz -C /
  • 恢复数据库(如适用):
    • Oracle 示例:impdp system/password@SID directory=DATA_PUMP_DIR dumpfile=backup_YYYY-MM-DD.dmp logfile=impdp_YYYY-MM-DD.log
  • 启动服务:$DOMAIN_HOME/bin/startWebLogic.sh
  • 验证要点:
    • 登录 Admin Console 检查 域配置数据源连通性部署应用 是否正常;
    • 抽查关键业务功能与 最近日志 是否有异常。

五 备份策略与注意事项

  • 策略建议:
    • 全量备份建议 每日 执行,关键变更前后 即时 增量备份;
    • 采用 3-2-1 策略:至少 3 份副本、2 种不同介质、1 份异地/离线;
    • 定期做 恢复演练校验和/还原测试,确保可用性。
  • 注意事项:
    • 一致性优先:配置变更或补丁窗口内避免备份;对高一致场景先停服务或使用维护模式;
    • 权限与审计:备份与恢复账号遵循 最小权限;记录 操作人、时间、版本
    • 目录取舍:长期备份聚焦 $DOMAIN_HOME/config、data 等;cache、tmp 可忽略;
    • 数据库优先:业务数据以 数据库备份 为准,域备份仅作配置与部署的载体。

0