在 Debian 系统上备份 WebLogic,通常包含 WebLogic 软件本身、域配置、应用、日志、以及相关的数据库/数据源配置。下面按 生产环境常用做法 给你一个完整、可操作的备份方案。
虽然可以热备,但一致性最好的是停机备份:
# 停止 Managed Server
$DOMAIN_HOME/bin/stopManagedWebLogic.sh
# 停止 Admin Server
$DOMAIN_HOME/bin/stopWebLogic.sh
DOMAIN_HOME=/u01/oracle/user_projects/domains/base_domain
BACKUP_DIR=/backup/weblogic/$(date +%F)
mkdir -p $BACKUP_DIR
tar czvf $BACKUP_DIR/domain_backup.tar.gz $DOMAIN_HOME
✅ 包含内容:
config/config.xmlservers/bin/security/lib/init-info/WL_HOME=/u01/oracle/middleware
tar czvf $BACKUP_DIR/weblogic_install.tar.gz $WL_HOME
✅ 包含:
tar czvf $BACKUP_DIR/apps_backup.tar.gz $DOMAIN_HOME/autodeploy
# 或
tar czvf $BACKUP_DIR/apps_backup.tar.gz /app/deploy_path
tar czvf $BACKUP_DIR/logs_backup.tar.gz $DOMAIN_HOME/servers/*/logs
tar czvf $BACKUP_DIR/env_backup.tar.gz \
/etc/profile.d/ \
/home/weblogic/.bash_profile \
/home/weblogic/.bashrc
如果 WebLogic 使用 JDBC 连接数据库:
$DOMAIN_HOME/config/jdbc
mysqldump -u user -p dbname > db_backup.sql
# 或 Oracle RMAN
⚠️ WebLogic 不包含数据库数据,必须单独备份数据库
# 打包域
$WL_HOME/common/bin/pack.sh \
-domain=$DOMAIN_HOME \
-template=$BACKUP_DIR/domain.jar \
-template_name="Domain Backup"
恢复:
$WL_HOME/common/bin/unpack.sh \
-template=domain.jar \
-domain=/u01/oracle/user_projects/domains/base_domain
#!/bin/bash
DATE=$(date +%F)
BACKUP_DIR=/backup/weblogic/$DATE
DOMAIN_HOME=/u01/oracle/user_projects/domains/base_domain
WL_HOME=/u01/oracle/middleware
mkdir -p $BACKUP_DIR
tar czvf $BACKUP_DIR/domain.tar.gz $DOMAIN_HOME
tar czvf $BACKUP_DIR/wl_home.tar.gz $WL_HOME
find /backup/weblogic -type d -mtime +7 -exec rm -rf {} \;
设置定时任务:
crontab -e
0 2 * * * /opt/scripts/weblogic_backup.sh
✅ 版本一致:恢复时 WebLogic 版本必须一致
✅ 权限一致:使用相同用户(如 weblogic)
✅ 不要只备份 config.xml(不完整)
✅ 定期测试恢复
我可以给你 更精确的方案,如果你告诉我:
我可以直接给你 可复制执行的完整脚本 ✅