Windows下Oracle定時備份(全量備份)

關於Windows下oracle全量備份的文章,不少網站都有,寫下本文不過是爲了之後方便查找,不用再處處找。html

如下些許內容有所參考到其餘人所寫內容,這裏無心冒犯,本文引用內容部分會附上參考地址,還望原做者見諒。數據庫

備份腳本windows

新建txt文檔,把腳本複製進去後改文件格式爲bat文件,雙擊運行便可測試該腳本是否有誤。oracle

這裏要說明一下,開始把腳本拿過來執行時,一直未能成功備份數據庫測試

用bat的pause暫停調試發現了一些問題,有時不注意可能會在定義的變量如BACKUPDATE、USER等後面帶了空格網站

這個時候問題就來了,致使參數的不正確,因此這裏需注意!spa

@echo off   
echo ================================================   
echo  Windows環境下Oracle數據庫的自動備份腳本  
echo  1. 使用當前日期命名備份文件。  
echo  2. 自動刪除7天前的備份。  
echo ================================================  
echo  以「YYYYMMDD」格式取出當前時間。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
echo  設置用戶名、密碼和要備份的數據庫
set USER=ora_user
set PASSWORD=ora_name
set DATABASE=conn_db
echo  建立備份目錄
if not exist "E:\backup\data"       mkdir E:\backup\data  
if not exist "E:\backup\log"        mkdir E:\backup\log  
set DATADIR=E:\backup\data
set LOGDIR=E:\backup\log
exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log
echo  刪除7天前的備份。
forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path"
exit

注:該腳本參考Windows環境下Oracle數據庫的自動備份腳本.net

定時任務調試

這裏須要用到Windows的【任務計劃程序】,操做按照下列截圖一一操做。code

1、快捷查詢:
clipboard.png

2、選擇任務計劃程序:
clipboard.png

3、建立基本任務:

clipboard.png

4、填寫任務相關信息:
1)定時任務描述
clipboard.png
2)任務執行時間
clipboard.png
clipboard.png

clipboard.png
選擇剛剛寫的數據庫備份腳本
clipboard.png

最後在任務列表裏能夠看到剛剛建立的定時任務,那麼這個任務從設定的時間開始則會天天執行一次,即達到定時備份任務了
clipboard.png
注:以上內容參考 定時備份ORACLE數據庫:[1]windows環境下

以上即是Windows下定時全量備份Oracle數據庫了

相關文章
相關標籤/搜索