Oracle資料庫檔案恢復與備份思路

2022-04-03 21:30:48 字數 2878 閱讀 6233

任何資料庫在長期使用過程中,都會存在一定的安全隱患。對於資料庫管理員來說不能僅寄希望於計算機作業系統的安全執行,而是要建立一整套的資料庫備份與恢復機制。當資料庫發生故障後,希望能重新建立乙個完整的資料庫,該處理稱為資料庫恢復。恢復子系統是資料庫管理系統的乙個重要組成部分。恢復處理隨所發生的故障型別所影響的結構而變化。怎樣才能對oracle資料庫進行備份?如何才能對刪除的資料再進行恢復?這是本篇文章主要講的內容。

oracle資料庫使用幾種結構來保護資料:資料庫後備、日誌、回滾段和控制檔案。乙個oracle資料庫的每一例項有乙個相關聯的**日誌。乙個**日誌由多個**日誌檔案組成。**日誌檔案(online redo log file)填入日誌項(redo entry),日誌項記錄的資料用於重構對資料庫所作的全部修改。

一、 如何對資料庫進行還原與備份

oracle資料匯入匯出imp/exp就相當於oracle資料還原與備份。exp命令可以把資料從遠端資料庫伺服器匯出到本地的dmp檔案,imp命令可以把dmp檔案從本地匯入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,乙個用來測試,乙個用來正式使用。

oracle支援三種方式型別的輸出,分別是表方式(t方式),將指定表的資料匯出、使用者方式(u方式),將指定使用者的所有物件及資料匯出)、全庫方式(full方式),瘵資料庫中的所有物件匯出。

資料匯入(import)的過程是資料匯出(export)的逆過程,分別將資料檔案匯入資料庫和將資料庫資料匯出到資料檔案。

增量匯出是一種常用的資料備份方法,它只能對整個資料庫來實施,並且必須作為system來匯出。在進行此種匯出時,系統不要求回答任何問題。匯出檔名預設為export.dmp,如果不希望自己的輸出檔案定名為export.dmp,必須在命令列中指出要用的檔名。 增量匯出包括三種型別:「完全」增量匯出、「增量型」增量匯出、「累積型」增量匯出。資料庫管理員可以排定乙個備份日程表,用資料匯出的三個不同方式合理高效的完成。

二、備份

備份可以分為兩種,主要是冷備份和熱備份。冷備份發生在資料庫已經正常關閉的情況下,當正常關閉時會提供給我們乙個完整的資料庫。冷備份時將關鍵性檔案拷貝到另外的位置的一種說法。對於備份oracle資訊而言,冷備份時最快和最安全的方法。冷備份的優點是:

1、 是非常快速的備份方法(只需拷檔案)

2、 容易歸檔(簡單拷貝即可)

3、 容易恢復到某個時間點上(只需將檔案再拷貝回去)

4、 能與歸檔方法相結合,做資料庫「最佳狀態」的恢復。

5、 低度維護,高度安全。

但冷備份也有如下不足:

1、 單獨使用時,只能提供到「某一時間點上」的恢復。

2、 再實施備份的全過程中,資料庫必須要作備份而不能作其他工作。也就是說,在冷備份過程中,資料庫必須是關閉狀態。

3、 若磁碟空間有限,只能拷貝到磁帶等其他外部儲存裝置上,速度會很慢。

4、 不能按表或按使用者恢復。

如果可能的話(主要看效率),應將資訊備份到磁碟上,然後啟動資料庫(使使用者可以工作)並將備份的資訊拷貝到磁帶上(拷貝的同時,資料庫也可以工作)。冷備份中必須拷貝的檔案包括:

1、 所有資料檔案

2、 所有控制檔案

3、 所有聯機redo log檔案

4、 init.ora檔案(可選)

值得注意的使冷備份必須在資料庫關閉的情況下進行,當資料庫處於開啟狀態時,執行資料庫檔案系統備份是無效的。

下面是作冷備份的完整例子。

(1) 關閉資料庫

sqlplus /nolog

sql>;connect /as sysdba

sql>;shutdown normal;

(2) 用拷貝命令備份全部的時間檔案、重做日誌檔案、控制檔案、初始化引數檔案

sql>;cp ; ;

(3) 重啟oracle資料庫

sql>;startup

熱備份是在資料庫執行的情況下,採用archivelog mode方式備份資料庫的方法。所以,如果你有昨天夜裡的乙個冷備份而且又有今天的熱備份檔案,在發生問題時,就可以利用這些資料恢復更多的資訊。熱備份要求資料庫在archivelog方式下操作,並需要大量的檔案空間。一旦資料庫執行在archivelog狀態下,就可以做備份了。熱備份的命令檔案由三部分組成:

1. 資料檔案乙個表空間乙個表空間的備份。

(1) 設定表空間為備份狀態

(2) 備份表空間的資料檔案

(3) 回覆表空間為正常狀態

2. 備份歸檔log檔案

(1) 臨時停止歸檔程序

(2) log下那些在archive rede log目標目錄中的檔案

(3) 重新啟動archive程序

(4) 備份歸檔的redo log檔案

3. 用alter database bachup controlfile命令來備份控制檔案

熱備份的優點是:

1. 可在表空間或資料庫檔案級備份,備份的時間短。

2. 備份時資料庫仍可使用。

3. 可達到秒級恢復(恢復到某一時間點上)。

4. 可對幾乎所有資料庫實體做恢復

5. 恢復是快速的,在大多數情況下愛資料庫仍工作時恢復。

熱備份的不足是:

1. 不能出錯,否則後果嚴重

2. 若熱備份不成功,所得結果不可用於時間點的恢復

3. 因難於維護,所以要特別仔細小心,不允許「以失敗告終」。

三、如何才能提高oracle備份的速度?

1.可以通過發布以下命令來啟用該跟蹤機制:

sql> alter database enable block change tracking using file /oracle10g/rman/change.log;

該命令將建立乙個名為 /rman_bkups/change.log 的二進位制檔案,以用於跟蹤。

2.假如跟蹤檔案丟失,則會做全庫掃瞄

以後的增量也會做全庫掃瞄。唯一解決的辦法,就是重新執行全備,最後再增量。

Oracle資料庫檔案恢復與備份思路

一 如何對資料庫進行還原與備份 oracle資料匯入匯出imp exp就相當於oracle資料還原與備份。exp命令可以把資料從遠端資料庫伺服器匯出到本地的dmp檔案,imp命令可以把dmp檔案從本地匯入到遠處的資料庫伺服器中。利用這個功能可以構建兩個相同的資料庫,乙個用來測試,乙個用來正式使用。o...

資料庫檔案備份恢復

這是我在網上找到的,並且親自驗證 資料庫有2個檔案,分別是mall database log.ldf 和 mall database log.mdf 開啟企業管理器,在例項上右擊 所有任務 附加資料庫然後選擇上面你所說的資料檔案,就可以了。在查詢分析器中 sp attach db 資料庫名稱 路徑 ...

Oracle移動資料庫檔案

一。設定要移動的資料庫 開始 執行 cmd命令 set oracle sid experience experience你要移動檔案所屬的資料庫的sid 二。進入sqlplus sqlplus nolog conn sys sys as sysdba 已連線。select name from v d...