Oracle 數(shù)據(jù)庫備份與恢復的理論基礎(chǔ)
Oracle數(shù)據(jù)庫為什么能夠?qū)崿F(xiàn)安全、穩(wěn)定的運行狀態(tài),因為它不僅具有靈活的運行功能,它還是一 種系統(tǒng)性的關(guān)系數(shù)據(jù)庫。但隨著計算機系統(tǒng)不斷出現(xiàn)一些故障問題,如軟硬件問題、通訊問題、操作問題等,導致一些數(shù)據(jù)出現(xiàn)丟失、損壞的現(xiàn)象越來越嚴重。所以 為了解決這一丟失現(xiàn)象的嚴重發(fā)生,在本文與討論中就要加強對Oracle數(shù)據(jù)庫問題的解決。
1.Oracle數(shù)據(jù)庫的介紹
Oracle 數(shù)據(jù)庫這種管理系統(tǒng)是一種關(guān)系型的數(shù)據(jù)庫。Oracle數(shù)據(jù)庫這種關(guān)系系統(tǒng)在運行中具有比較好的移植性,在使用期間方便、快捷,而且功能性也比較強,它在 各種微機環(huán)境下都能適用。所以它對于數(shù)據(jù)庫來說,是一種可靠的、效率比較高的、適用性比較強的解決方案[1]。Oracle數(shù)據(jù)庫具有一個完整的、系統(tǒng) 的、處于世界地位水平之上的數(shù)據(jù)管理功能,它在數(shù)據(jù)庫管理功能中進行處理的方向上實現(xiàn)了分布式管理,在進行更合理的運用和創(chuàng)造過程中,就要進行系統(tǒng)的學習 和研究,從而掌握Oracle在各個機型中相關(guān)的技術(shù)知識。Oracle數(shù)據(jù)庫在功能管理中有很多特點,這種完整性的數(shù)據(jù)管理系統(tǒng)在應用中能夠?qū)⒋罅康臄?shù) 據(jù)合理的進行解決和處理,實現(xiàn)數(shù)據(jù)的長期保存,還能進行數(shù)據(jù)的實時共享,從而保證數(shù)據(jù)在應用中的安全、可靠性。Oracle這項技術(shù)的產(chǎn)生已經(jīng)開始應用到 各個領(lǐng)域,特別對于一些計算機專業(yè)的畢業(yè)生具有較大的就業(yè)前景,主要具有兩方面的優(yōu)勢。一方面,Oracle這項技術(shù)的就業(yè)面比較廣,這項技術(shù)應用在各個 企業(yè)單位與相關(guān)政府機構(gòu),在金融行業(yè)、電信行業(yè)以及政府中的發(fā)展更久遠、發(fā)展的目標更強大。另一方面,選擇的職業(yè)方向也更多,學好Oracle這項技術(shù)以 及將它應用在對數(shù)據(jù)的管理方向上、對系統(tǒng)的開發(fā)方向上、對數(shù)據(jù)模型的建立方向上等
2.Oracle數(shù)據(jù)庫的備份模式
Oracle 數(shù)據(jù)庫在備份方式上主要有三種標準模式。分別為脫機備份、聯(lián)機備份以及邏輯備份。脫機備份與聯(lián)機備份這兩種模式都屬于物理備份,它在進行分化過程中是通過 數(shù)據(jù)庫的工作模式來完成的。脫機備份也成冷備份,它屬于非歸檔模式的一種;而聯(lián)機備份與之相反,它又稱熱備份,這是企業(yè)常用的一種備份方式,通常使用 RMAN備份工具,制定備份策略,定期備份,屬于歸檔模式的一種。這兩種模式在Oracle數(shù)據(jù)庫的物理備份中同屬于一種模式[2]。這兩種物理備份在數(shù) 據(jù)庫分析中只是針對文件進行的,對一些邏輯主要內(nèi)容并不考慮。對于邏輯備份來說,這種備份方式是實現(xiàn)文件的形式拷貝,是導入與導出兩種備份模式的產(chǎn)生,是 文件進行讀取與文件寫入的兩種方式,由于它們所處的位置不同,所以在讀取與引入中產(chǎn)生的數(shù)據(jù)不同,所以者三種備份方式在操作系統(tǒng)中比較重要。
2.1脫機備份
脫 機備份在操作系統(tǒng)中,主要是通過拷貝技術(shù)來進行的,如果數(shù)據(jù)庫出現(xiàn)關(guān)閉期間,都可以將數(shù)據(jù)庫中的所有數(shù)據(jù)進行復制,從而保障因故障產(chǎn)生丟失數(shù)據(jù)的現(xiàn)象。這 種拷貝技術(shù)還可以還原數(shù)據(jù)庫中的文件,從而保障文件在運行中的穩(wěn)定狀態(tài)。數(shù)據(jù)庫中的這些文件也可以進行全部備份,特別是數(shù)據(jù)庫中的所有文件、控制文件、數(shù) 據(jù)庫在運行中的日志文件[3]。但脫機備份在備份期間要注意到,必須將數(shù)據(jù)庫關(guān)閉才能進行備份,如果沒有關(guān)機就進行備份,執(zhí)行的數(shù)據(jù)庫文件就不能有效的實 現(xiàn)備份。具體的脫機備份方式在操作過程中必須要在系統(tǒng)能夠提供的服務管理器下運行,首先要關(guān)閉正常的備份,然后將整個數(shù)據(jù)庫備份到一個目錄或文件夾中,最 后啟動數(shù)據(jù)庫。實現(xiàn)的脫機備份方式速度比較快,歸檔的方式也比較方便,但在備份期間,數(shù)據(jù)庫只能進行備份,并不能實現(xiàn)其他的數(shù)據(jù)庫任務。
2.2聯(lián)機備份
聯(lián) 機備份是在沒有用戶對數(shù)據(jù)庫進行訪問時進行備份的,它是一種不一致備份方式,是在數(shù)據(jù)庫文件與控制文件讀取期間進行的不一致備份。因為有些數(shù)據(jù)庫在運行中 是不能進行關(guān)機的,在這種情況下要進行數(shù)據(jù)的備份模式,就要對數(shù)據(jù)文件進行不一致的者表空間。聯(lián)機備份在形成方式上主要有完全備份與增量備份,對于完全備 份來說,它是一種集中備份的數(shù)據(jù)模式,但不包括那些不常使用的數(shù)據(jù)。如果在歸檔期間進行備份時,日志文件與控制文件發(fā)生重做現(xiàn)象,這期間數(shù)據(jù)庫服務器就會 備份所有的文件。對于增量備份來說,它只對已經(jīng)被修改的文件進行備份。聯(lián)機備份在數(shù)據(jù)文件與空間上進行備份實現(xiàn)的速度比較快,用戶不需要關(guān)機就能執(zhí)行備 份。但聯(lián)機備份在進行期間,要實現(xiàn)良好的備份表空間狀態(tài),就要將原來的狀態(tài)實施恢復,從而保障數(shù)據(jù)庫再進行啟動時免受覆蓋的現(xiàn)象。
2.3邏輯備份
邏 輯備份主要是導入與導出兩種數(shù)據(jù)庫模式。對于數(shù)據(jù)庫的導出來說,Oracle中的程序用來讀取和輸出的,它可以將數(shù)據(jù)庫中保存的信息導出到指定的位置。邏 輯備份在操作方式中主要有三種情況,一種在導出中要對指定的表進行備份,一種在導出中利用全庫方式對所有的對象進行備份,另外一種在導出中將用戶要指定的 所有數(shù)據(jù)進行備份。在導入數(shù)據(jù)庫過程中,由于它是一種逆過程所以要先將導出文件進行讀取,然后才能恢復數(shù)據(jù)庫。
3.Oracle數(shù)據(jù)庫的備份研究
3.1管理好備份中所需要的儲存介質(zhì)
為 了防止原有的備份數(shù)據(jù)庫丟失,在備份期間就要管理好所需要的儲存介質(zhì),可以將備份中的主要內(nèi)容、日期以及介質(zhì)的編號進行整理和分類,以免在恢復時弄錯介 質(zhì)。對需要的儲存介質(zhì)進行備份,為了避免在實際工作中出現(xiàn)損害的現(xiàn)象,最好備份兩份以上,如果發(fā)生這種數(shù)據(jù)丟失現(xiàn)象還可以利用另一份將數(shù)據(jù)庫進行恢復。已 經(jīng)備份好的儲存介質(zhì)還要與計算機設備放在不同的地方,以防止因意外事故發(fā)生影響計算機損壞。
3.2設置好數(shù)據(jù)庫的歸檔模式
當 數(shù)據(jù)庫在NonArchiveLog模式運行期間,要實現(xiàn)一致性的數(shù)據(jù)庫備份方式,在備份期間一定要先關(guān)閉,不能運用聯(lián)機中對日志的存檔進行重作,在數(shù)據(jù) 庫恢復的時候只能恢復到最近的一次備份點,以免在Oracle數(shù)據(jù)庫失敗期間還可以將最近的數(shù)據(jù)庫進行備份。當數(shù)據(jù)庫在ArchiveLog模式運行期 間,不僅要對數(shù)據(jù)庫實現(xiàn)一致性備份,還要對數(shù)據(jù)庫的打開情況進行備份,這種情況下要運用聯(lián)機備份方式。這種備份數(shù)據(jù)庫的聯(lián)機方式、日志文件的存檔重作方 式,不僅能使用戶在提交上恢復了所有的數(shù)據(jù),保證日志在時間與系列號處的恢復和整理,而且利用歸檔模式下的有效備份,可以將數(shù)據(jù)庫恢復到某一個時間點,還 使數(shù)據(jù)在恢復中增加了靈活效果,防止故障發(fā)生期間導致數(shù)據(jù)的丟失現(xiàn)象。
3.3備份多個控制文件
根據(jù)數(shù) 據(jù)庫控制文件的多元化,在Oracle數(shù)據(jù)庫備份與恢復過程中,要實現(xiàn)控制文件的多個備份方式,主要表現(xiàn)在兩個方面。一方面,對多個控制文件進行備份主要 利用在不同的物理磁盤上,因為控制文件在數(shù)據(jù)庫備份方式上,主要是運用Oracle數(shù)據(jù)庫來引導的,所以實現(xiàn)多個控制文件的備份方式,不僅能夠使物理磁盤 在發(fā)生故障期間得到有效的保障,還能使其他的控制文件在運營上實現(xiàn)數(shù)據(jù)庫的恢復處理。另一方面,進行定期的聯(lián)機備份操作,主要對備份的數(shù)據(jù)庫文件、控制文 件以及歸檔日志文件。在備份對數(shù)據(jù)庫文件期間,備份的頻率、恢復數(shù)據(jù)的時間具有明顯的差異,如果數(shù)據(jù)庫文件在備份時發(fā)生的頻率比較高,在恢復數(shù)據(jù)庫過程 時,日志信息改變的也就越少,所恢復的時間也就越短。
4.Oracle數(shù)據(jù)庫的恢復
數(shù)據(jù)庫在恢復中的 實現(xiàn)技術(shù),它在恢復過程中。首先,將數(shù)據(jù)庫恢復到原有備份狀態(tài)上,然后,根據(jù)已經(jīng)備份好的數(shù)據(jù),在日志事物中進行歸檔和重做,從而使副本文件更新到失敗之 前的數(shù)據(jù)庫狀態(tài)?;謴蛿?shù)據(jù)庫這種方法的利用主要分析存在的問題,本文從實例恢復與介質(zhì)恢復兩種方式[7]上進行闡述。
4.1實例和崩潰恢復
對 于實例故障的恢復來說,它經(jīng)常出現(xiàn)的故障現(xiàn)象是由于電源問題導致的服務器不可用現(xiàn)象、由于CPU出現(xiàn)的故障問題、由于內(nèi)在故障問題以及Oracle數(shù)據(jù)庫 在后臺運行中出現(xiàn)的故障問題。這種恢復方式為了使數(shù)據(jù)庫更準確、一致,不僅可以將所有數(shù)據(jù)輸入到數(shù)據(jù)文件中,還可以將所有沒有提及到的數(shù)據(jù)以及事物回退 掉,在進行實例恢復期間,整個過程都是利用Oracle系統(tǒng)來完成的,它改變了人力在數(shù)據(jù)庫上的執(zhí)行操作,實現(xiàn)了自動化的系統(tǒng)模式。進行實例和崩潰恢復的 主要目的,主要將失敗的實例實現(xiàn)緩存、重做線程,它在已經(jīng)記錄的、關(guān)閉的信息中來實現(xiàn)的。這種方式在運行中是一種自動化、重做信息的接受方式,如果 Oracle系統(tǒng)在內(nèi)部中出現(xiàn)實例和崩潰故障,它能夠?qū)崿F(xiàn)自動數(shù)據(jù)的恢復,而不需要人為來實施操作。
4.2介質(zhì)恢復
介 質(zhì)恢復這種操作方式是Oracle數(shù)據(jù)庫在使用管理中常見的,這種形式主要是數(shù)據(jù)文件的介質(zhì)恢復與塊介質(zhì)恢復[8]。對于數(shù)據(jù)文件的介質(zhì)恢復來說,它主要 對發(fā)生損壞與丟失期間的數(shù)據(jù)進行恢復,也能對不使用OfflineNormal選項離線進行恢復。在一般情況下,由于實例恢復與介質(zhì)恢復在數(shù)據(jù)文件中能夠 保證數(shù)據(jù)庫的完整性,所以對數(shù)據(jù)文件進行介質(zhì)恢復期間,不僅需要還原以前的受損文件、使用歸檔和在線進行重作日志,還需要利用人工直接干預、需要將數(shù)據(jù)庫 中的錯誤介質(zhì)自動啟動以及將Oracle系統(tǒng)內(nèi)部中的控制進行恢復等。對于塊介質(zhì)恢復來說,由于它是運用RMAN進行的一種獨特介質(zhì)恢復系統(tǒng)。當數(shù)據(jù)庫處 于可用在線期間就要還原數(shù)據(jù)塊;如果數(shù)據(jù)文件中部分數(shù)據(jù)塊處于限制、損壞狀態(tài),就要進行故障解決。
隨著系統(tǒng)化技術(shù)的不斷發(fā)展變化,
下一篇:ORACLE 數(shù)據(jù)庫序列創(chuàng)建、RMAN使用和參數(shù)文件故障解決