程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Windows環境下Oracle數據庫的自動備份腳本

Windows環境下Oracle數據庫的自動備份腳本

編輯:Oracle教程

Windows環境下Oracle數據庫的自動備份腳本


@echo off 
echo ================================================ 
echo  Windows環境下Oracle數據庫的自動備份腳本
echo  1. 使用當前日期命名備份文件。
echo  2. 自動刪除30天前的備份。
echo ================================================
::以“YYYYMMDD”格式取出當前時間。
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%
set CURTIME=%time:~0,2%
REM 小時數如果小於10,則在前面補0
if "%CURTIME%"==" 0" set CURTIME=00
if "%CURTIME%"==" 1" set CURTIME=01
if "%CURTIME%"==" 2" set CURTIME=02
if "%CURTIME%"==" 3" set CURTIME=03
if "%CURTIME%"==" 4" set CURTIME=04
if "%CURTIME%"==" 5" set CURTIME=05
if "%CURTIME%"==" 6" set CURTIME=06
if "%CURTIME%"==" 7" set CURTIME=07
if "%CURTIME%"==" 8" set CURTIME=08
if "%CURTIME%"==" 9" set CURTIME=09
set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%

::設置用戶名、密碼和要備份的數據庫。
set USER=carbon_zhenjiang_bak
set PASSWORD=carbon_zhenjiang_bak
set DATABASE=orcl
::創建備份目錄。
if not exist "D:\backup\data\%BACKUPDATE% "		mkdir D:\backup\data\%BACKUPDATE%
if not exist "D:\backup\log\%BACKUPDATE% " 		mkdir D:\backup\log\%BACKUPDATE%
set DATADIR=D:\backup\data\%BACKUPDATE%
set LOGDIR=D:\backup\log\%BACKUPDATE%
exp %USER%/%PASSWORD%@%DATABASE%  file=%DATADIR%\%USER%_%BACKUPDATE%%CURTIME%.dmp log=%LOGDIR%\log_%BACKUPDATE%%CURTIME%.log
::刪除30天前的備份。
forfiles /p "%DATADIR%" /s /m *.* /d -30 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -30 /c "cmd /c del @path"
exit

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved