oracle冷備份示例

Oracle的冷備份

1 冷備份發生在數據庫已經正常關閉的情況下,當正常關閉時會提供給我們一個完
整的數據庫。冷備份是將關鍵性文件拷貝到另外位置的一種做法。對於備份Oracle信息而言,冷備份是最快和最安全的方法。值得注意的是冷備份必須是數據庫關閉的情況下完成,當數據庫開着的時候,執行數據庫文件系統備份無效。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

2、冷備份所需備份的文件包括以下幾種:

l            所有數據文件

l            所有控制文件

l            所有聯機REDO LOG 文件

l            INIT<sid>.ORA文件(可選)

3、冷備份的步驟

l         正常關閉要備份的實例(instance

l         備份整個數據庫到一個目錄

l         啓動數據庫

4、用冷備份進行數據庫恢復

    如果數據庫是運行在非歸檔日誌模式下,將備份文件拷貝回原來的目錄即可。非歸檔日誌模式下數據庫只能恢復到備份時刻的狀態。

    如果數據庫是運行在歸檔日誌模式下,將數據文件拷回原來的目錄(不包括聯機redolog文件),然後依次選擇相應的重做日誌文件進行恢復,即可恢復冷備份後的所有操作,即是說可以恢復到系統崩潰前的狀態。

5、冷備份示例

l            示例一、windows環境下的冷備份與恢復
  
在本例中,數據庫實例名wh,所有數據文件、所有控制文件和所有聯機REDO LOG 文件都在文件夾D:/oracle/ora92/wh中,備份恢復的操作如下:

 

1、  進入 sql*plus,以sysdba的身份登錄數據庫

SQL>sys/oracle@wh as sysdba

2、  關閉數據庫SQL>shutdown immediate

3、  拷貝D:/oracle/ora92/wh到目標備份目錄E:/bacakupora/wh

 

數據庫冷備份完成。下面對數據庫中的內容進行更改:

4、啓動數據庫

SQL>startup
5
、刪除數據

SQL>delete * from wh.test

 

     此時進行數據庫恢復。

     6SQL>shutdown immediate;

7、拷貝目標備份目錄E:/bacakupora/whD:/oracle/ora92/wh

     數據庫恢復完畢。通過查詢可以發現數據庫恢復到進行備份時刻的狀態,備份後所進行的所有操作無效。

 

 

l            示例二、linux環境下的冷備份與恢復

在本例中,數據庫實例名urpdb,所有數據文件存放在/oradata/urpdb目錄下,所有控制文件和所有聯機REDO LOG 文件都在文件夾opt/ora9/oradata/urpdb中,備份恢復的操作如下:

 

 1sys/oracle@urpdb as sysdba 進入sql*plus;
 2
SQL>shutdown immediate (保持所有數據文件在時間點上的一致性
)
 3
、拷貝/oradata/urpdbopt/ora9/oradata/urpdb下的所有文件到新的備份目錄。

 
假設進行如下操作:
 4
SQL>startup
 5
SQL>create table test(c1 number(5),c2 varcharc(10));
 6
SQL>insert into text values(1,’a’);
 7
SQL>commit;

    此後假設有一個數據文件壞了,然後將備份的所有文件包括聯機重做日誌文件拷貝回來。
8
SQL>shutdown immediate;
9
、拷貝文件包括聯機重做日誌文件。


SQL>startup;
數據恢復完畢!但備份後所執行的操作沒有恢復。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章