熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle冷備份

2022-06-13   來源: Oracle 

   冷備份發生在數據庫已經正常關閉的情況下當正常關閉時會提供給我們一個完整的數據庫

  冷備份是將關鍵性文件拷貝到另外位置的一種做法對於備份Oracle信息而言冷備份是最快和最安全的方法值得注意的是冷備份必須是數據庫關閉的情況下完成當數據庫開著的時候執行數據庫文件系統備份無效

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

  所有數據文件

  所有控制文件

  所有聯機REDO LOG 文件

  INIT<sid>ORA文件(可選)

  冷備份的步驟

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

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

  啟動數據庫

  用冷備份進行數據庫恢復

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

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

  冷備份示例

  示例一windows環境下的冷備份與恢復

  在本例中數據庫實例名wh所有數據文件所有控制文件和所有聯機REDO LOG 文件都在文件夾D:\oracle\ora\wh中備份恢復的操作如下

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

  SQL>sys/oracle@wh as sysdba

   關閉數據庫SQL>shutdown immediate

   拷貝D:\oracle\ora\wh到目標備份目錄E:\bacakupora\wh

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

  啟動數據庫

  SQL>startup

  刪除數據

  SQL>delete from whtest (刪除某個用戶的表)

  此時進行數據庫恢復

  SQL>shutdown immediate;

  拷貝目標備份目錄E:\bacakupora\wh到D:\oracle\ora\wh

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

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

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

  sys/oracle@urpdb as sysdba 進入sql*plus;

  SQL>shutdown immediate (保持所有數據文件在時間點上的一致性)

  拷貝\oradata\urpdb和opt\ora\oradata\urpdb下的所有文件到新的備份目錄

  假設進行如下操作

  SQL>startup

  SQL>create table test(c number()c varcharc());

  SQL>insert into text values(a);

  SQL>commit;

  此後假設有一個數據文件壞了然後將備份的所有文件包括聯機重做日志文件拷貝回來

  SQL>shutdown immediate;

  拷貝文件包括聯機重做日志文件

  SQL>startup;

  數據恢復完畢!但備份後所執行的操作沒有恢復


From:http://tw.wingwit.com/Article/program/Oracle/201311/16503.html
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.