一、备份前准备
./stopWebLogic.sh(需切换至weblogic用户或具有相应权限的用户);http://服务器IP:7001/console)导航至“环境”→“服务器”→选择服务器实例→点击“关闭”完成停止。root用户或weblogic用户执行。二、Linux版WebLogic备份步骤
配置文件是WebLogic恢复的基础,需备份整个域目录(包含config.xml、boot.properties等关键文件)。常用命令如下:
# 备份整个域目录(如域名为mydomain,路径为/home/weblogic/Oracle/Middleware/user_projects/domains/mydomain)
tar -czvf /opt/backup_weblogic/mydomain_config_$(date +%Y%m%d).tar.gz /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain
# 或备份关键配置文件(更灵活)
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/config /opt/backup_weblogic/config_backup
cp /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/boot.properties /opt/backup_weblogic/config_backup
cp /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/startWebLogic.sh /opt/backup_weblogic/config_backup
注:
config.xml是域的核心配置文件,boot.properties用于存储管理服务器的启动密码,需优先备份。
应用程序(WAR/EAR包)和业务数据(如数据库)是业务运行的核心,需单独备份:
# 备份应用程序(假设部署在域的applications目录下)
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/applications/*.war /opt/backup_weblogic/app_backup
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/applications/*.ear /opt/backup_weblogic/app_backup
# 备份外部数据库(如Oracle,需提前安装expdp工具)
expdp system/password@ORCL directory=DATA_PUMP_DIR dumpfile=mydomain_db_backup.dmp
注:若应用依赖外部数据库,需同时备份数据库数据,确保业务一致性。
日志文件(server.log、access.log)记录了WebLogic的运行状态,可用于故障排查:
# 备份日志文件(域日志路径如/home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/servers/AdminServer/logs)
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/servers/AdminServer/logs /opt/backup_weblogic/log_backup
为节省存储空间,建议将备份文件压缩:
# 压缩配置文件备份
gzip /opt/backup_weblogic/mydomain_config_$(date +%Y%m%d).tar.gz
# 压缩应用程序备份
gzip /opt/backup_weblogic/app_backup/*.war
gzip /opt/backup_weblogic/app_backup/*.ear
# 压缩日志备份
gzip /opt/backup_weblogic/log_backup/*.log
将备份文件复制至安全位置(如外部硬盘、云存储),避免本地磁盘故障导致数据丢失:
# 复制至远程服务器(需配置SSH免密)
scp /opt/backup_weblogic/*.tar.gz user@remote_server:/path/to/remote_backup
# 或复制至本地挂载的外部硬盘
cp /opt/backup_weblogic/*.tar.gz /mnt/external_disk/backup/
通过编写Shell脚本结合crontab实现定时自动备份,减少人工操作:
# 编写备份脚本(/opt/scripts/backup_weblogic.sh)
#!/bin/bash
BACKUP_DIR="/opt/backup_weblogic"
DOMAIN_DIR="/home/weblogic/Oracle/Middleware/user_projects/domains/mydomain"
DATE=$(date +%Y%m%d)
# 备份域目录
tar -czvf $BACKUP_DIR/domain_$DATE.tar.gz $DOMAIN_DIR
# 备份应用程序
cp -r $DOMAIN_DIR/applications/*.war $BACKUP_DIR/app_$DATE
cp -r $DOMAIN_DIR/applications/*.ear $BACKUP_DIR/app_$DATE
# 压缩备份文件
gzip $BACKUP_DIR/domain_$DATE.tar.gz
gzip $BACKUP_DIR/app_$DATE/*.war
gzip $BACKUP_DIR/app_$DATE/*.ear
# 删除7天前的备份
find $BACKUP_DIR -type f -mtime +7 -exec rm -f {} \;
# 赋予执行权限
chmod +x /opt/scripts/backup_weblogic.sh
# 添加crontab定时任务(每天凌晨2点执行)
echo "0 2 * * * /opt/scripts/backup_weblogic.sh" >> /var/spool/cron/root
注:脚本需根据实际环境调整域目录、备份路径等参数。
三、Linux版WebLogic恢复步骤
恢复前需停止WebLogic服务,确保数据一致性:
# 停止管理服务器
./stopWebLogic.sh
将备份的配置文件覆盖至原始域目录:
# 恢复整个域目录
tar -xzvf /opt/backup_weblogic/mydomain_config_20250930.tar.gz -C /home/weblogic/Oracle/Middleware/user_projects/domains/
# 或恢复关键配置文件
cp -r /opt/backup_weblogic/config_backup/config /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/
cp /opt/backup_weblogic/config_backup/boot.properties /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/
cp /opt/backup_weblogic/config_backup/startWebLogic.sh /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/
将备份的应用程序和数据恢复至原始位置:
# 恢复应用程序
cp -r /opt/backup_weblogic/app_backup/*.war /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/applications/
cp -r /opt/backup_weblogic/app_backup/*.ear /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/applications/
# 恢复外部数据库(如Oracle)
impdp system/password@ORCL directory=DATA_PUMP_DIR dumpfile=mydomain_db_backup.dmp
将备份的日志文件复制至原始日志目录:
cp -r /opt/backup_weblogic/log_backup/*.log /home/weblogic/Oracle/Middleware/user_projects/domains/mydomain/servers/AdminServer/logs/
恢复完成后,启动WebLogic服务并验证状态:
# 启动管理服务器
./startWebLogic.sh
# 登录WebLogic控制台(http://服务器IP:7001/console),检查域配置、应用程序部署状态是否正常。
server.log),确认无启动错误。四、注意事项
/home/weblogic/Oracle/Middleware/utils/bsu/cache_dir目录下的补丁文件;