天天看點

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

前言

資料庫備份是生産環境DB伺服器重要的工作之一,而定時的自動備份也有助于幫助我們快速的定位還原異常或問題資料,本篇blog就簡單記錄一下在windows server 2008中如何通過腳本和任務計劃程式實作每日自動備份資料。

建立腳本

首先建立一個windows的批處理腳本,這裡命名為XNZZDB.bat:

@echo off
set adir=%DATE:~,%%DATE:~5,2%%DATE:~,% 
exp XNZZ/XNZZ@XNZZDB FILE=E:\DB_BACKUP\XNZZDB_%adir%.dmp
           

可以看到首先為adir變量指派,其實這個表達式的就是截取和拼接指定格式日期,adir變量的格式其實就是yyyyMMdd格式的日期。

其次是我們熟悉的exp指令,導出肯定還是要通過exp指令來實作,我們導出的檔案路徑就是e盤下的DB_BACKUP目錄,而檔案命就是XNZZDB _串接目前日期(yyyyMMdd格式),為了驗證最好先用最高權限運作一下看是否能成功備份并導出檔案到指定目錄,可以看到我這裡是可以成功導出的:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

而接下來就是如何每日定時執行這個腳本檔案的問題了,在windows中可以通過任務計劃程式來實作。

建立任務

首先是建立一個任務,在附件–>系統工具中可以看到任務計劃程式:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

點選打開後可以看到主界面:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

點選右側的建立基本任務,随便輸入一個名稱後點選【下一步】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

然後是選擇執行頻率,我這裡選擇每天,然後點選【下一步】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

接着是設定開始時間和具體幾點執行,我這裡選擇每天18點執行,從今天開始,然後點選【下一步】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

由于我們執行的是批處理腳本,是以直接選擇【啟動程式】即可,然後點選【下一步】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

接着就是選擇我們腳本的位置,如果有參數的話填上參數,點選【下一步】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

最後确認一下配置無誤,點選【完成】:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

由于我們勾選了當點選【完成】時打開任務屬性對話框,是以接下來我們看到的就是任務屬性對話框,我們在這裡還要再做一些設定:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

如上圖所示,這個配置非常重要,即選中“不管使用者是否登入都要運作”和“使用最高權限運作”,注意這一點尤為重要,如果不選中這兩項那麼批處理腳本就無法自動執行完畢。最後點選【确定】并輸入密碼即可:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

最後在首頁就可以看到剛才添加的任務了:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

輕按兩下該任務即可進入任務詳情頁面,也就能看到上次和下次的執行時間以及上次的執行結果:

Oracle 10g 每日自動備份(Windows Server 2008 R2 Datacenter)前言建立腳本建立任務總結

至此關于Oracle 10g在windows server上的自動備份配置就已全部結束,登出後每天18:00都會自動執行備份腳本同時在我們指定的目錄會生成當天的DMP檔案。

總結

簡單記錄一下這個問題,希望對遇到同樣問題的同學有所幫助,The End。