Ubuntu环境下如何备份WebLogic数据
导读:Ubuntu下WebLogic数据备份实操指南 一 备份范围与准备 明确备份对象: 域配置:位于 $DOMAIN_HOME/config(含 config.xml 等); 域数据:位于 $DOMAIN_HOME/data(运行时数据等)...
Ubuntu下WebLogic数据备份实操指南
一 备份范围与准备
- 明确备份对象:
- 域配置:位于 $DOMAIN_HOME/config(含 config.xml 等);
- 域数据:位于 $DOMAIN_HOME/data(运行时数据等);
- 日志文件:位于 $DOMAIN_HOME/logs(便于排障与审计);
- 应用与部署:位于 $DOMAIN_HOME/applications 或域下的 autodeploy;
- JDBC数据源:通常为外部数据库,需单独进行数据库备份;
- 证书与密钥:如 $DOMAIN_HOME/security 下的密钥库与信任库。
- 准备与约束:
- 建议以 WebLogic 运行用户(如 weblogic)执行备份,避免权限问题;
- 为降低一致性风险,建议在低峰时段进行,必要时先停止域;
- 统一备份命名与存放,如 /backup/weblogic/domain_YYYYMMDD_HHMMSS.tar.gz;
- 规划保留周期与异地/离线副本,便于灾难恢复。
- 说明:以下路径与做法与 Debian/CentOS 上的 WebLogic 目录结构一致,Ubuntu 可直接复用。
二 手动备份步骤
- 1)设置变量并可选停机
- 设置域目录与环境变量:
export DOMAIN_HOME=/home/weblogic/user_projects/domains/base_domainexport WL_HOME=/opt/weblogic/wlserver(按实际安装路径调整)
- 为减少文件变更导致的不一致,建议先停止管理服务器与受管服务器:
$DOMAIN_HOME/bin/stopWebLogic.sh(必要时先停受管:$DOMAIN_HOME/bin/stopManagedWebLogic.sh < server_name> < admin_url>)
- 设置域目录与环境变量:
- 2)打包域目录(最省事的全量方式)
tar -czvf /backup/weblogic/domain_$(date +%F_%H%M%S).tar.gz -C $DOMAIN_HOME .
- 3)仅备份关键子目录(更灵活,便于精细恢复)
- 配置:
tar -czvf /backup/weblogic/config_$(date +%F).tar.gz -C $DOMAIN_HOME config - 数据:
tar -czvf /backup/weblogic/data_$(date +%F).tar.gz -C $DOMAIN_HOME data - 日志:
tar -czvf /backup/weblogic/logs_$(date +%F).tar.gz -C $DOMAIN_HOME logs - 应用:
tar -czvf /backup/weblogic/apps_$(date +%F).tar.gz -C $DOMAIN_HOME applications
- 配置:
- 4)备份数据库(JDBC 数据源)
- 使用数据库原生工具执行备份(示例):
- MySQL:
mysqldump -u< user> -p< pass> --single-transaction --routines --triggers --databases < db1> > /backup/weblogic/db_$(date +%F).sql - Oracle:
expdp < user> /< pass> @< tns> DIRECTORY=DATA_PUMP_DIR DUMPFILE=domain_$(date +%F).dmp LOGFILE=expdp_$(date +%F).log SCHEMAS=< schemas>
- MySQL:
- 使用数据库原生工具执行备份(示例):
- 5)备份安全与证书
tar -czvf /backup/weblogic/security_$(date +%F).tar.gz -C $DOMAIN_HOME security
- 6)可选 使用 WLST 导出配置(便于跨环境迁移/版本化管理)
- 示例:
$WL_HOME/common/bin/wlst.sh -i exportDomain.py /backup/weblogic/domain_config_$(date +%F).py - 在脚本中调用
exportDomain('$DOMAIN_HOME', '/backup/weblogic/domain_config.xml', logFile='export.log')导出为 XML。
- 示例:
- 7)校验与清理
- 校验:
tar -tzf /backup/weblogic/domain_*.tar.gz > /dev/null; - 清理:按保留策略删除旧备份(如保留最近 7 天)。
- 校验:
三 自动化与远程备份
- 1)Shell 脚本示例(含停机、打包、保留与数据库备份占位)
- 保存为 /opt/scripts/backup_weblogic.sh,赋权:
chmod +x /opt/scripts/backup_weblogic.sh - 示例要点:
- 设置
DOMAIN_HOME、BACKUP_DIR、RETENTION_DAYS; - 可选停机;
- 打包 config/data/logs/apps/security;
- 调用数据库备份命令(按实际替换);
- 校验归档并清理过期备份。
- 设置
- 保存为 /opt/scripts/backup_weblogic.sh,赋权:
- 2)定时任务(crontab)
- 每天 02:00 执行:
0 2 * * * /opt/scripts/backup_weblogic.sh > > /var/log/weblogic_backup.log 2> & 1
- 每天 02:00 执行:
- 3)远程备份(rsync over SSH)
- 推送到备份服务器:
rsync -avz --delete -e ssh /backup/weblogic/ backup@192.0.2.10:/data/weblogic_backups/
- 拉取方式(从备份服务器拉回):
rsync -avz --delete -e ssh backup@192.0.2.10:/data/weblogic_backups/ /backup/weblogic/
- 推送到备份服务器:
- 4)可选 加密与增量
- 加密归档:
gpg -c /backup/weblogic/domain_*.tar.gz; - 增量同步:
rsync -avz --link-dest=../latest /backup/weblogic/ /backup/weblogic/incremental/$(date +%F)/。
- 加密归档:
四 恢复流程与验证
- 1)恢复前准备
- 建议先停止 WebLogic;准备与备份时一致的 WebLogic 版本与补丁;确认目标目录权限。
- 2)全量恢复(域目录)
tar -xzvf /backup/weblogic/domain_YYYYMMDD_HHMMSS.tar.gz -C /
- 3)按目录恢复(更灵活)
- 配置:
tar -xzvf /backup/weblogic/config_YYYY-MM-DD.tar.gz -C $DOMAIN_HOME - 数据:
tar -xzvf /backup/weblogic/data_YYYY-MM-DD.tar.gz -C $DOMAIN_HOME - 日志:
tar -xzvf /backup/weblogic/logs_YYYY-MM-DD.tar.gz -C $DOMAIN_HOME - 应用:
tar -xzvf /backup/weblogic/apps_YYYY-MM-DD.tar.gz -C $DOMAIN_HOME - 证书:
tar -xzvf /backup/weblogic/security_YYYY-MM-DD.tar.gz -C $DOMAIN_HOME
- 配置:
- 4)数据库恢复
- MySQL:
mysql -u< user> -p< pass> < /backup/weblogic/db_YYYY-MM-DD.sql - Oracle:
impdp < user> /< pass> @< tns> DIRECTORY=DATA_PUMP_DIR DUMPFILE=domain_YYYY-MM-DD.dmp LOGFILE=impdp_YYYY-MM-DD.log
- MySQL:
- 5)WLST 导入配置(如使用)
$WL_HOME/common/bin/wlst.sh -i importDomain.py /backup/weblogic/domain_config.xml
- 6)启动与验证
- 启动:
$DOMAIN_HOME/bin/startWebLogic.sh; - 验证:访问 管理控制台、检查 Server 日志、核对 JDBC 连接池、抽查关键 应用功能 与 数据一致性。
- 启动:
五 备份策略与注意事项
- 策略建议
- 采用 3-2-1 策略:至少 3 份副本、存储在 2 种不同介质、其中 1 份异地/离线;
- 明确频率(如每日全量 + 关键目录更频密)、保留周期(如7/30 天)、加密与访问控制;
- 定期做恢复演练与备份完整性校验,确保可恢复性。
- 注意事项
- 对含大量变动文件的目录(如 cache/tmp)通常无需纳入备份;
- 使用 tar 时优先用 -p 保留权限与属主,确保恢复后 weblogic 用户可正常访问;
- 跨平台/跨版本恢复前先在测试环境验证;
- 若无法停机,可考虑在线导出配置(WLST)并配合数据库一致性快照/备份,降低停机窗口影响。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu环境下如何备份WebLogic数据
本文地址: https://pptw.com/jishu/762501.html
