root
用戶或weblogic
用戶)。./stopWebLogic.sh
若需停止整個域,可使用weblogic.server stop DomainName
命令。WebLogic的核心配置(如config.xml
、域結構)存儲在domain
目錄下,需優先備份。常用命令如下:
tar -czvf /opt/backup_weblogic/Middleware_backup_$(date +%Y%m%d).tar.gz /home/weblogic/Oracle/Middleware
tar -czvf /opt/backup_weblogic/domain_backup_$(date +%Y%m%d).tar.gz /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name
其中domain_name
需替換為實際域名稱(如mydomain
)。部署在WebLogic上的應用(WAR/EAR包)及關聯數據(如外部數據庫)需單獨備份:
domain_name/applications
):tar -czvf /opt/backup_weblogic/app_backup_$(date +%Y%m%d).tar.gz /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/applications
expdp
工具導出數據泵文件:expdp system/password@SID directory=DATA_PUMP_DIR dumpfile=weblogic_app_backup.dmp
mysqldump
導出數據庫:mysqldump -u root -p weblogic_db > /opt/backup_weblogic/weblogic_db_backup_$(date +%Y%m%d).sql
日志文件(如server.log
、access.log
)記錄了WebLogic運行狀態,需定期備份:
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/servers/admin_server/logs /opt/backup_weblogic/logs_$(date +%Y%m%d)
其中admin_server
為管理服務器名稱,若有托管服務器需同步備份其日志目錄。
為簡化流程,可編寫Shell腳本實現自動備份,并通過crontab
設置定時任務:
/opt/backup_weblogic/backup_weblogic.sh
):#!/bin/bash
BACKUP_DIR="/opt/backup_weblogic"
DATE=$(date +%Y%m%d)
# 備份Middleware
tar -czvf "$BACKUP_DIR/Middleware_backup_$DATE.tar.gz" /home/weblogic/Oracle/Middleware
# 備份應用
tar -czvf "$BACKUP_DIR/app_backup_$DATE.tar.gz" /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/applications
# 備份日志
cp -r /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/servers/admin_server/logs "$BACKUP_DIR/logs_$DATE"
# 刪除7天前的備份(保留最近7天)
find "$BACKUP_DIR" -type f -mtime +7 -name "Middleware_backup_*.tar.gz" -exec rm -rf {} \;
find "$BACKUP_DIR" -type f -mtime +7 -name "app_backup_*.tar.gz" -exec rm -rf {} \;
find "$BACKUP_DIR" -type d -mtime +7 -name "logs_*" -exec rm -rf {} \;
chmod +x /opt/backup_weblogic/backup_weblogic.sh
crontab -e
添加以下內容:0 2 * * * /opt/backup_weblogic/backup_weblogic.sh
若需恢復WebLogic,需按以下步驟操作:
tar -xzvf /opt/backup_weblogic/Middleware_backup_YYYYMMDD.tar.gz -C /
或單獨恢復域目錄:tar -xzvf /opt/backup_weblogic/domain_backup_YYYYMMDD.tar.gz -C /home/weblogic/Oracle/Middleware/user_projects/domains
tar -xzvf /opt/backup_weblogic/app_backup_YYYYMMDD.tar.gz -C /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/applications
impdp
(Oracle)或mysql
(MySQL)導入備份文件。cp -r /opt/backup_weblogic/logs_YYYYMMDD/* /home/weblogic/Oracle/Middleware/user_projects/domains/domain_name/servers/admin_server/logs
./startWebLogic.sh