Windows下數據庫自動備份並將備份完的數據文件發送至局域網的另一臺服務器

@echo off   
echo ================================================   
echo  Windows環境下Oracle數據庫的備份腳本  
echo  1. 使用當前日期命名備份文件。  
echo  2. 自動刪除3天前的備份。  
echo ================================================  
::以“YYYYMMDD”格式取出當前時間。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%  
::創建備份目錄。  
if not exist "C:\backup\data"       mkdir C:\backup\data
if not exist "C:\backup\log"        mkdir C:\backup\log
for /f "tokens=1,2,3 delims=/- " %%i in ("%date%") do set TODAY=%%i%%j%%k

set EXPLOG=C:\backup\log\%TODAY%.log
echo 開始備份
exp %USER%/%PASSWORD%@%DATABASE% grants=y owner=%DATABASENAME%
echo 備份完成
echo 刪除7天前的備份。  
forfiles /p "C:\backup\data" /s /m *.* /d -3 /c "cmd /c del @path"  
forfiles /p "C:\backup\log" /s /m *.* /d -3 /c "cmd /c del @path"  

echo 推送到指定pc共享目錄
net use X: \\%另一臺服務器ip%\%指定目錄% "%PASSWORD%" /user:"%USER%"
xcopy C:\backup\data\*.dmp X:\ /s /e /y /d
net use X: /del

exit 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章