Microsoft SQL Server數據庫安全備份和恢復策略
摘 要:本文提出了異機備份的策略,它能在數據服務器崩潰或Microsoft SQL Server系統崩潰時有效的恢復數據,從而有力的保證了Microsoft SQL Server中數據的完整、安全。
一、引言
信息技術的發展離不開數據庫技術的不斷發展,從dbase、Foxbase、Foxpro、Access,到Microsoft SQL Server、Sybase SQL Server、Oracle,數據庫的規模越來越大,其功能也越來越強大。Microsoft SQL Server是運行在Microsoft Windows NT上的一個高性能數據庫管理系統,它基于多線程的客戶/服務器體系結構,這一點與其他流行的多進程客戶/服務器數據庫系統不同,多線程的數據庫系統與多進程的數據庫系統相比,裝入Microsoft SQL Server時,僅僅啟動一個進程,而每個用戶有各自的線程,這種結構需要的資源比多進程系統少得多。Microsoft SQL Server的強大功能還表現在其保證數據的完整性,有了服務器維護數據的完整性,就沒有再必要依賴各個部門的程序員,他們能力各異,編寫的應用程序也很難統一,然可以在應用程序內部努力保證完整性,但是沒有必要完全寄希望于此,因為有了Microsoft SQL Server,就可以在整個LAN內部保證數據庫信息的完整性和一致性。因此Microsoft SQL Server在許多單位得以應用,然而其數據庫系統產生各種故障的可能性始終存在,更要求我們合理備份數據庫中的數據。
二、故障的產生及后果
計算機系統有許多種故障類型,諸如:
.機械損壞,計算機的各種部件(包括磁盤)都存在物理的,機械的故障可能性。
.電源故障,指一般的UPS無法保護的異常電源故障。
.自然災害,地震、水災,火災或其他原因造成的嚴重故障。
.錯誤使用,客戶應用程序以及服務程序使用中的中途故障。
.惡意破壞,在一個系統中也不排除一些惡意破壞者。
.其他還有多種形式,但大多數是以上幾種形式的變體。
假如沒有數據備份,一旦產生故障(主要是系統發生故障)那就不可能恢復丟失的數據,如果是這樣的話,不得不返回物理文件重新輸入所有數據,試想一下,輸入以前那些信息曾花費了多少個日夜,并且在重新輸入舊數據時,新數據還在不斷的到來,所以沒有理由不為服務器配置一個有效的備份設備,多投入一點資金與潛在的不可恢復的商業信息以及人們的寶貴時間相比顯得微不足道。
三、備份策略
定期備份數據庫是最穩妥的防止磁盤故障(主要是系統發生故障)的方法,它能有效的恢復數據,這是一種比較兼價的保險形式,同時也是最簡單的確保能恢復大部分信息的方法。建立一個完整的備份策略需要考慮很多因素,包括:
.備份周期。(根據數據的重要程序,可以選擇每周、每日、每時進行備份)。
.使用靜態備份還是動態備份,(動態備份也即允許數據庫運行時進行備份)。
.僅使用全備份還是共同使用全備份和增量備份。
.使用什么介質,(磁帶還是磁盤)。
.使用人工備份還是設計好的自動備份程序。
.檢驗備份完整性的周期。
.備份存儲的空間是否防竊、防磁干擾、防火。
.是否指定其他人實行備份,他們是否享有必要的登錄號和口令。
.在負責備份和恢復的主要人員缺席的情況下,是否有其他人能代替他們。
最快的然而是最昂貴的保護是準備一個備份服務器隨時替代主服務器,備份服務器必須能支持Microsoft SQL Server運行,并能完整備份所有數據庫,系統和用戶帳戶,因為事務處理日志和數據庫的轉儲由主服務器創建,所以他們必須迅速的裝載到備份服務器,如果主服務器需要中止工作一段時間,只需投入備份服務器代替主服務器即可,備份服務器將接管事務處理日志,就好象什么也沒有發生。
以上是服務器鏡象備份,也稱為雙機熱備份,另外還有硬盤鏡象備份,(最好有二個相同的硬盤),因出于成本或其他原因考慮,尤其是雙機熱備份(單獨專門使用一個與服務器配置一樣的計算機作為備份服務器)采用者較少,因此我們提出了異機備份的策略,這也是最好最經濟的備份方式,特別是當服務器崩潰或Microsoft SQL Sever系統崩潰時,因為此時除了雙熱備份可以啟用備份服務器直接使用外,通過其他的各種備份策略(不包括異機備份策略)必須重裝服務器操作系統 (Microsoft Windows NT)或重裝Microsoft SQL Sever,采用異機備份策略,則不必擔心,這時候只需待裝好Microsoft SQL Sever時,從異機傳送數據恢復即可,具體做法是:
在局域網內的任何一臺工作站計算機上安裝Microsoft Windows NT及Microsoft SQL Server,并在該機上建立一個與服務器中的數據庫同名的數據庫,利用Microsoft SQL Server系統本身提供的異機傳送工具(在Microsof SQL Enterprise Manager中的Tools菜單下的Database/Object Transfer)通過設置定時(可以是每周、每月、每日或每時)由計算機自動的把服務器中數據庫的數據傳送到該工作站機的數據庫中,這樣一旦服務器(操作系統)崩潰或Microsoft SQL Server系統崩潰時,只要重裝服務器操作系統(Microsoft Windows NT)或重裝Microsoft SQL Server仍然可以采用異機傳送工具來通過該工作站機把數據傳回至服務器的Microsoft SQL Server數據庫中,以確保數據的安全恢復,上海宏士達公司就是使用這一方法才在惡劣環境下也保證數據不丟失。
此外,定期的把某些數據,某些表或全部數據備份到光盤,軟盤中,放于保險的安全處,也不失為一種好方法。
四、結語
數據庫的安全備份/恢復策略固然有多種,但當服務器或Microsoft SQL Server數據庫系統發生崩潰時,其原先的備份數據很難恢復,因為Microsoft SQL Server數據庫不象Focpro等數據庫可以直接拷貝數據文件,前者必須要有備份策略,才能安全恢復,因此,在處理異常故障時我們提出了異機備份策略,已經收到了奇效,我們相信只要采用適當有效的備份/恢復措施,大型數據庫Microsoft SQL Server的數據是能夠安全保護的。
關鍵字:數據庫、備恢復、服務器
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解