閱讀屋>資料庫作業系統> Oracle資料庫備份的常用技巧

Oracle資料庫備份的常用技巧

Oracle資料庫備份的常用技巧

  利用下面的列出的技巧來確保你不會在每週一次的資料庫備份過程中忘記關鍵步驟。

  每週一次備份主資料庫。如果你建立、修改或者停止一個數據庫,新增新的SQL Server訊息,新增或者停止連線伺服器,或者新增記錄裝置,那就進行手工備份。

  每天備份一次msdb資料庫。它一般非常小,但很重要,因為它包含了所有的SQL Server工作、操作和計劃任務。

  只有當你修改它時,才有必要備份模型資料庫。

  用SQL Server Agent來安排你的備份工作的時間表。

  如果在你的生產(production)環境中有現成資源,備份生產資料庫到本地磁碟或者網路伺服器(用同一個開關)。然後,把備份檔案/裝置複製到磁帶上。在存在許多硬體故障(特別是在RAID系統中)的情況下,磁碟常常是完好的(inact)。如果備份檔案是在磁碟上,那麼恢復時的速度會提高很多。

  備份開發和測試資料庫至少要用到SIMPLE恢復模型。

  除了有計劃的定時備份外,在進行未記錄的(nonlogged)批操作(如,批複製)、建立索引、或者改變恢復模型後要備份使用者資料庫。

  如果你使用的是SIMPLE恢復模型,記住在截短(truncate)交易記錄之後備份你的資料庫。

  用文件記錄你的恢復步驟。至少要大概記錄這些步驟,注意所有的重要檔案的位置。

  在截短記錄之前,也就是所有的已提交(committed)交易從記錄中清空之前,所有的這些資訊都儲存在交易記錄中。在SIMPLE恢復模型中,記錄在一個CHECKPOINT期間內截短(在SQL Server記憶體緩衝寫道磁碟時),它是自動發生的,但也可以手動執行。這也就是SIMPLE恢復模型不支援時間點(point-in-time)恢復的'原因。在FULL和BULK_LOGGED恢復模型下,當交易記錄被備份時,交易記錄被截短,除非你明確指出不進行截短。

  為了備份交易記錄,使用BACKUP LOG命令。其基本語法與BACKUP命令非常相似:

  BACKUP LOG { database } TO

  下面是如何把交易記錄備份到一個名為LogBackupDevice的邏輯裝置上的例子:

  BACKUP TRANSACTION Northwind TO LogBackupDevice

  如果你不希望截短交易記錄,使用NO_TRUNCATE選項,如下所示:

  BACKUP TRANSACTION Northwind TO LogBackupDevice WITH NO_TRUNCATE

  只是基本知識

  儘管我在本文中僅僅概述了資料庫恢復的基本知識,你還是可以透過這些技巧來找到正確的方向。那麼,為了避免不必要的(丟失資料造成的)恐慌,你要做到每週備份主資料庫,每天備份msdb。

【Oracle資料庫備份的常用技巧】相關文章: