需要定時自動備份Oracle資料庫,希望使用最簡單的工具和方法。
定時:使用Windows內建的計劃任務完成。
備份:使用Oracle自己的匯出工具Export,命令列命令為exp,查看協助的命令為>exp -help
需要編寫一個指令碼,該指令碼執行exp命令,使用計劃任務定時調用該指令碼運行即可。
oracle_backup.vbs
Option Explicit
On Error Resume Next
Dim fname, cmd
Dim WshShell
Set WshShell = CreateObject("WScript.Shell")
fname = Date & "_" & Hour(Now) & "_" & Minute(Now) & "_" & Second(Now)
cmd = "exp log=../backup/" & fname & "_Oracle_bak.log file=../backup/" & fname &
"_Oracle_bak.dmp parfile=exp.txt"
WshShell.run cmd
Set WshShell = Nothing
exp.txt設定檔內容:
userid=username/password@database
owner=scott
INDEXES=y
grants=y
rows=y
constraints=y
compress=N
設定檔說明:
主要修改的參數為:
userid=username/password@database
:這是用那個使用者去備份資料庫,並指明了串連的資料庫,在這裡,用username使用者備份資料庫,其密碼為password,
要備份的資料庫為database。該部分一般要改。
owner=scott:要備份哪個使用者,該例中,要備份scott使用者。如果要備份多個使用者,使用者名稱之間要用逗號‘,’隔開。該部分一般要改。如備份scott使用者與system使用者,則'owner=scott,system'。
如果熟悉exp備份工具,則可以該其他參數。也可以向exp.txt檔案中加入其他參數