王捷音
隨著計(jì)算機(jī)技術(shù)的發(fā)展,數(shù)據(jù)庫技術(shù)已成為計(jì)算機(jī)信息系統(tǒng)與應(yīng)用系統(tǒng)的核心技術(shù)和重要基礎(chǔ),數(shù)據(jù)庫信息的安全性和穩(wěn)定性就顯得尤為重要。我們?nèi)粘9ぷ髦兴玫降挠晁樘幚硐到y(tǒng)、報(bào)文的轉(zhuǎn)換系統(tǒng)、水文管理系統(tǒng)等都是以水文數(shù)據(jù)庫為基礎(chǔ)的,如果由于人為錯(cuò)誤、硬件故障、程序錯(cuò)誤、計(jì)算機(jī)病毒、網(wǎng)絡(luò)故障或自然災(zāi)害等原因造成水文數(shù)據(jù)庫破壞或丟失,將嚴(yán)重影響防汛抗旱工作的順利進(jìn)行,因此,需要進(jìn)行數(shù)據(jù)庫備份來保護(hù)水文數(shù)據(jù)庫。當(dāng)數(shù)據(jù)庫受到破壞或丟失時(shí),用戶可以使用數(shù)據(jù)庫的備份文件對其進(jìn)行恢復(fù),保障水文數(shù)據(jù)庫信息的安全和穩(wěn)定。
SQL SERVER 2005是目前比較常用的數(shù)據(jù)庫,對數(shù)據(jù)庫的備份也有許多方法,利用其本身企業(yè)管理器帶有備份和恢復(fù)數(shù)據(jù)庫的工具可以實(shí)現(xiàn),利用ASP以及別的編程技術(shù)也可實(shí)現(xiàn)。本文主要介紹的是利用SQL SERVER代理作業(yè)實(shí)現(xiàn)水文數(shù)據(jù)庫在本機(jī)以及遠(yuǎn)程的雙備份。這樣即使本機(jī)受到損壞,但網(wǎng)絡(luò)內(nèi)的另外一臺機(jī)器還有備份。
要實(shí)現(xiàn)本機(jī)遠(yuǎn)程雙備份技術(shù)就必須要了解SQL SERVER 2005數(shù)據(jù)庫備份的基本原理和相關(guān)的基礎(chǔ)知識,SQL SERVER 2005常用的備份和恢復(fù)的方法有:
(1)通過企業(yè)管理器的數(shù)據(jù)庫備份和還原功能。
(2) 在查詢分析器里執(zhí)行“sp_detach_db’db_name’,true”分離數(shù)據(jù)庫,將*.mdf和*.ldf拷貝出來,當(dāng)然也可以通過停止SQL SERVER服務(wù)來拷貝數(shù)據(jù)庫文件,即冷備份。利用數(shù)據(jù)庫附加來還原數(shù)據(jù)庫。
(3)在查詢分析器里執(zhí)行“backup database‘db_name’to disk=’文件名’”來備份數(shù)據(jù)庫,執(zhí)行“restoredatabase‘db_name’fromdisk=’文件名’”可還原數(shù)據(jù)庫。
第一種方法是利用SQL SERVER的企業(yè)管理器自帶的數(shù)據(jù)庫備份恢復(fù)的功能,可以直接使用。第二種方法是通過在查詢分析器里執(zhí)行數(shù)據(jù)庫分離的SQL語句來實(shí)現(xiàn),也可以通過拷貝文件來實(shí)現(xiàn)冷備份。第三種方法就是要在查詢分析器里里執(zhí)行SQL語句來備份和還原數(shù)據(jù)庫。本文將采用第三種方法的原理,在代理作業(yè)中進(jìn)行自動(dòng)備份。
利用代理作業(yè)的目的是將數(shù)據(jù)庫根據(jù)時(shí)間進(jìn)行本機(jī)和遠(yuǎn)程備份,備份后壓縮、刪除原文件、定期刪除一天前的遠(yuǎn)程以及本機(jī)備份。利用SQL SERVER代理作業(yè)的前提是將SQL Server Agent服務(wù)打開。假設(shè)水文數(shù)據(jù)庫(數(shù)據(jù)庫名為SQDB)在A機(jī)上,將數(shù)據(jù)庫備份保留在A機(jī)的E盤下的SJDB文件夾下同時(shí)存在局域網(wǎng)內(nèi)B機(jī)(假設(shè)B機(jī)的ip地址為192.168.0.7,將bf文件夾做為備份文件夾)上。具體步驟如下:
(1)在開始菜單中打開SQL Server Management Studio,展開窗口左邊的對象資源管理器。
(2)在 SQL Server代理下,選擇“作業(yè)->新建作業(yè)->常規(guī)”,輸入作業(yè)的名稱。在新建步驟中選擇T-SQL,命令中輸入下面語句:
代碼中備份的刪除間隔天數(shù)可以自由設(shè)置,可以設(shè)置成1d,也可以設(shè)置成7d。
(3)添加計(jì)劃,按工作的實(shí)際情況設(shè)置頻率、時(shí)間等參數(shù),這樣代理作業(yè)就可以按照使用者的意愿去執(zhí)行。
進(jìn)行數(shù)據(jù)庫代理作業(yè)設(shè)置之后,由于所備份文件處于壓縮狀態(tài),可以自動(dòng)刪除,占用硬盤空間較小,使用起來比較靈活,簡化了數(shù)據(jù)的備份工作,但進(jìn)行完數(shù)據(jù)庫備份之后還應(yīng)對數(shù)據(jù)庫備份進(jìn)行測試,這樣才能有效地保護(hù)數(shù)據(jù)庫信息的安全和穩(wěn)定