中國民用航空華北地區空中交通管理局 吳 冰
Oracle Database備份與恢復的應用
中國民用航空華北地區空中交通管理局 吳 冰
為了避免各種意外的系統事故所帶來的巨大損失,我們必須認識到數據庫備份與恢復的重要性,從而做到未雨綢繆。理想的數據庫備份應該是全方位和多層次的。但如今很多系統在制作時由于資金和技術的原因而不能采用多機熱備份和異地備份等備份技術。因此,作為一名數據庫管理員應該做好數據庫的備份與恢復工作,降低數據丟失的風險。
Oracle Database的備份是指備份數據庫的所有數據文件和控制文件。備份與恢復是保證數據庫安全運行的一項重要內容,也是數據庫管理員的重要職責。根據數據庫管理員所維護系統的不同,Oracle Database的備份模式主要分為以下3種。
1.全備份。即每次備份定義的所有數據。該模式的優點是恢復速度快、備份較完整,缺點是備份數據量大,在數據較多時做1次全備份需要較長的時間。因此,全備份適用于在系統上線和數據庫恢復之后做備份,以及在長時間未進行備份時進行備份。
2.差異增量備份。即備份上次備份以來更新的所有數據。該模式的優點是每次備份的數據量較少,缺點是恢復時需要進行全備份和多份增量備份。因此,差異增量備份適用于每天的數據備份。
3.累計增量備份。即備份自上次或更早期備份以來更新的所有數據。該模式的優缺點介于前兩種備份之間,累計增量備份適用于每周初或每月初的數據備份。
Oracle Database提供2種備份方案,即備份恢復方案和向前滾動方案。
1.備份恢復方案。備份恢復方案只能恢復已經備份過的數據,即對數據庫中某塊數據建立備份,生成的備份數據文件脫離Oracle Database的管理并存在磁盤中,當數據庫的數據出現問題時,可將備份文件恢復到數據庫中,使用導入和導出命令就可實現這種備份。
2.向前滾動方案。向前滾動方案可以使建立備份后的事務不會丟失,使Oracle Database記憶之前某一個正常的狀態,并形成記錄日志文件。當Oracle Database出現問題時,利用存檔的重作記錄文件功能回到Oracle Database之前的正常狀態,這種方案對系統的開銷較大,但恢復的程度也更高、更完備。
恢復管理器(簡稱RMAN)是Oracle Database提供的一個管理備份與恢復的重要工具。RMAN在提供數據庫備份與恢復的同時消除了操作的復雜性。從Oracle 8開始,RMAN為數據庫管理員提供了集成的備份和恢復解決方案。RMAN具有支持在線熱備份、多級增量備份、并行備份與恢復、備份與恢復使用簡單等優點。Oracle Database的備份與恢復方式比較復雜。數據庫管理員必須在了解Oracle Database結構的基礎上使用不同的備份恢復方式進行處理。RMAN的好處在于數據庫管理員在大部分情況下不需要了解數據庫的結構就可以使用一些最簡單的語句來進行恢復。在實際環境中,筆者建議數據庫管理員使用熱備份。而熱備份必須在Database歸檔模式下才可進行,下面,筆者主要介紹歸檔模式在SQLPLUS中的開啟方法。
1.通過查看archive log list數據庫是否處于archive模式來決定是否開啟。如果不是在archive模式,則設定數據庫運行于歸檔模式下。具體操作步驟如下:
SQL>shutdown immediate
SQL>startup mount
SQL>alter database archiivelog
SQL>alter database open
2.如果automaticarchival顯示為“enabled”,則數據庫歸檔方式為自動歸檔。其他情況則需要進行手工歸檔,或者將歸檔方式修改為自動歸擋。具體操作步驟如下:
SQL>shutdown immediate
修改Init*.ora中參數加入log_archive_start=true
Startup pfile=lnit*.ora路徑
SQL>startup
備份與恢復工作的重點在于恢復,一個無法恢復的備份對系統而言是毫無意義的,因此,在日常的工作中,數據庫管理員要有計劃地對數據庫進行備份。下面,筆者提供一些建議策略。
1.定期對數據庫進行多級模式備份。多級模式備份的目的在于減少備份與恢復所需的時間,并保證系統具有良好的恢復性。
2.自動歸檔模式可根據用戶的實際需求來定義所需要備份的數據,然后自動啟動備份作業流程,從而大大減少數據庫管理員的工作量。
3.制作數據庫的控制文件、數據文件和參數文件并保存在不同的磁盤中。但為了減少數據庫資源的消耗,應盡量避免重做日志備份。
4.對于經常使用的用戶表或表空間,可使用邏輯備份的方式備份。并且,在條件允許的情況下還要經常測試備份的數據,以保證數據的真實有效。
5.記錄服務器的硬件和軟件配置。在對數據庫進行結構調整時,必須進行數據庫的全備份操作。
綜上,信息時代的核心是信息技術,而信息技術的核心在于信息的處理與存儲。如今使用計算機辦公的單位越來越多,為了管理好海量的數據,選擇大型數據庫軟件的單位也在不斷增加。本文,筆者對Oracle Database的備份與恢復進行了簡單介紹,希望能為從事數據庫管理的工作人員提供一些參考和建議。