Oracle數(shù)據(jù)庫備份方案_第1頁
Oracle數(shù)據(jù)庫備份方案_第2頁
Oracle數(shù)據(jù)庫備份方案_第3頁
Oracle數(shù)據(jù)庫備份方案_第4頁
Oracle數(shù)據(jù)庫備份方案_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Oracle數(shù)據(jù)庫備份方案一 前言如同社會總會有不公平、人總會犯錯誤、程序總會有BUG一樣,數(shù)據(jù)庫出現(xiàn)問題是不可避免的,好的備份是項目成功應(yīng)用的關(guān)鍵。從獨立的硬盤保存?zhèn)浞菸募⒅鳈C與從機同步(DATA GUARD)到多實例單數(shù)據(jù)庫的負(fù)載平衡(RAC),按照不同的需求對應(yīng)不同級別的技術(shù),但其根本就是數(shù)據(jù)的冗余,用人力和物力來提高數(shù)據(jù)可用性。二 備份恢復(fù)工具簡介1,常用的imp/exp工具我們常用的imp/exp工具是由Oracle提供的用于在客戶端把數(shù)據(jù)導(dǎo)出到dmp文件,進(jìn)行數(shù)據(jù)轉(zhuǎn)移和保存的方法,是邏輯備份。在11gR2中已經(jīng)廢棄exp,保留imp,相關(guān)操作由數(shù)據(jù)汞(Data Pump)的imp

2、dp/expdp代替。優(yōu)點為: 1, 使用簡單。 2, 可以指定導(dǎo)出某個邏輯對象(整個數(shù)據(jù)庫或用戶或表)缺點為: 1, 不能進(jìn)行完全恢復(fù)(Complete Recovery) 2, 只能備份數(shù)據(jù)文件(Data File) 3, 全庫導(dǎo)出對數(shù)據(jù)庫壓力較大 4, 占用空間較大2,恢復(fù)管理器(RMAN) 由Oracle提供的專業(yè)的備份與恢復(fù)工具,是物理備份。 優(yōu)點為: 1, 可以進(jìn)行完全恢復(fù)與不完全恢復(fù) 2, 可以備份所有數(shù)據(jù)庫文件(控制文件,服務(wù)器參數(shù)文件,歸檔日志文件,數(shù)據(jù)文件) 3, 具有功能強大的控制能力和腳本編寫語言 4, 支持在線熱備份 5, 支持多級增量備份 6, 支持并行備份,恢復(fù)

3、7, 減少備份數(shù)據(jù)量(壓縮、塊級備份) 8, 可將文件備份到磁盤或磁帶 9, 支持在線塊級別恢復(fù)10,可以限制速率,減少備份中對系統(tǒng)的造成的影響11,等等。三 配置RMAN1,配置歸檔(ARCHIVELOG)模式數(shù)據(jù)庫在裝載(MOUNT)模式下執(zhí)行下列操作開啟歸檔模式SQL ALTER DATABASE ARCHIVELOG;將數(shù)據(jù)庫置于歸檔模式可防止重做日志在歸檔之前被覆蓋。如果處于非歸檔(NOARCHIVELOG)模式,數(shù)據(jù)庫只能恢復(fù)到上一次備份的時間,到當(dāng)前時間的之間的數(shù)據(jù)變更都會丟失。2,配置控制文件自動備份RMAN CONFIGURE CONTROL ON;RMAN的相關(guān)信息保存在控

4、制文件中(非CATALOG模式),如果控制文件丟失而又沒有備份的話,會給數(shù)據(jù)庫的恢復(fù)造成很大困難3,配置控制文件記錄保持時間SQL ALTER SYSTEM SET CONTROL_;設(shè)置RMAN備份信息保存在控制文件中的時間,要大于等于保留策略的恢復(fù)窗口。4,配置保留策略的恢復(fù)窗口RMAN CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 31 DAYS;備份文件超過這個日期時RMAN會標(biāo)記為已不用(OBSOLETE):RMAN REPORT OBSOLETE;數(shù)據(jù)庫中的文件超過這個日期時RMAN會報告需要備份:RMAN REPORT NEED

5、 BACKUP;5,設(shè)定默認(rèn)保存?zhèn)浞菸募穆窂絉MAN CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT D: /BACKUP/%U6,啟用快速增量備份在9i中,RMAN進(jìn)行增量備份要掃描所有數(shù)據(jù)文件,找出發(fā)生變更的數(shù)據(jù)塊,然后進(jìn)行備份。在10g中,增加了一個新特性-塊更改跟蹤(Block Change Tracking),會把發(fā)生變更的數(shù)據(jù)塊記錄在一個跟蹤文件內(nèi),這樣就避免了增量備份時對數(shù)據(jù)庫的全面掃描。SQL ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE D:/BACKUP/BLOCK_CHA

6、NGE_TRACKING.TRC;7,配置RMAN使用優(yōu)化(OPTIMIZATION)模式RMAN CONFIGURE BACKUP OPTIMIZATION ON;開啟優(yōu)化模式RMAN會自動跳過滿足某些條件的文件,實驗表明,優(yōu)化模式可以提高10%左右的性能8,配置RMAN使用壓縮備份集RMAN CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 1;在10g中RMAN增加了一個新特性-壓縮備份集,能夠使備份集減少到原來的1/5或1/6,代價是增加10%左右的CPU消耗,可以根據(jù)實際情況選擇使用。

7、條件允許的話(多物理硬盤、多CPU)還可以用上面命令設(shè)定并行備份四 多級備份策略 采用多級備份是為了減少了恢復(fù)所需要的時間和減少每天備份所需要的時間,而又保證系統(tǒng)有很好的恢復(fù)性。但是在恢復(fù)時間和備份時間要有一個權(quán)衡。比如只要開始的一個全備份和備份所有產(chǎn)生的歸檔文件就可以保證把數(shù)據(jù)庫恢復(fù)到最新的狀態(tài),但是一般來說實際上并不會這么進(jìn)行(因為在恢復(fù)時將需要很長很長的時間),多級備份就是為了解決這樣的問題。以下是一種建議的方案。每個月做一次零級備份每個星期做一次一級增量備份每天做一次一級差異備份當(dāng)需要時(如不到二十四個小時歸檔文件系統(tǒng)就要滿了)備份歸檔文件1,零級備份腳本RMAN RUN ALLOCA

8、TE CHANNEL DEV1 TYPE DISK;ALLOCATE CHANNEL DEV2 TYPE DISK ;ALLOCATE CHANNEL DEV3 TYPE DISK ;BACKUP INCREMENTAL LEVEL 0 TAG LV0 FORMAT D:/ORACLE/BACKUP/%U DATABASE PLUS ARCHIVELOG DELETE ALL INPUT;DELETE NOPROMPT OBSOLETE;RELEASE CHANNEL DEV1;RELEASE CHANNEL DEV2;RELEASE CHANNEL DEV3;2,一級增量備份腳本RMAN R

9、UN ALLOCATE CHANNEL DEV1 TYPE DISK ;ALLOCATE CHANNEL DEV2 TYPE DISK ;ALLOCATE CHANNEL DEV3 TYPE DISK ;BACKUP INCREMENTAL LEVEL 1 CUMULATIVE TAG LV1C FORMAT D:/ORACLE/BACKUP/%U DATABASE PLUS ARCHIVELOG DELETE ALL INPUT;RELEASE CHANNEL DEV1;RELEASE CHANNEL DEV2;RELEASE CHANNEL DEV3;3,一級差異備份腳本RMAN RUN

10、ALLOCATE CHANNEL DEV1 TYPE DISK ;ALLOCATE CHANNEL DEV2 TYPE DISK ;ALLOCATE CHANNEL DEV3 TYPE DISK ;BACKUP INCREMENTAL LEVEL 1 TAG LV1D FORMAT D:/ORACLE/BACKUP/%U DATABASE PLUS ARCHIVELOG DELETE ALL INPUT;RELEASE CHANNEL DEV1;RELEASE CHANNEL DEV2;RELEASE CHANNEL DEV3;4,歸檔文件備份腳本RMAN RUN ALLOCATE CHANN

11、EL DEV1 TYPE DISK ;ALLOCATE CHANNEL DEV2 TYPE DISK ;ALLOCATE CHANNEL DEV3 TYPE DISK ;BACKUP 3 ARCHIVELOG ALL DELETE INPUT;RELEASE CHANNEL DEV1;RELEASE CHANNEL DEV2;RELEASE CHANNEL DEV3;則每天所需要備份的數(shù)據(jù)量只有一天的改變量。而做恢復(fù)時最多只要恢復(fù)當(dāng)月的一個零級備份+三個一級增量備份+6個一級差異備份+當(dāng)天的歸檔文件。如果不能接受這樣的恢復(fù)時間,就只能夠減少零級備份之間的時間間隔(如可以每個星期做一個零級備份,

12、這樣恢復(fù)時最多只需要恢復(fù)一個星期的數(shù)據(jù)量)。對于負(fù)載極低的系統(tǒng)甚至可以半年做一次零級備份五 管理RMAN通過RMAN的REPORT,LIST,CROSSCHECK,DELETE命令可以對RMAN進(jìn)行管理。1,如果手動刪除了備份文件的話,需要執(zhí)行交叉檢驗讓RMAN進(jìn)行同步。RMAN CROSSCHECK BACKUP;RMAN CROSSCHECK ARCHIVELOG ALL;交叉檢驗后RMAN會把已經(jīng)被手動刪除的備份文件的狀態(tài)設(shè)置為過期(EXPIRED)。2,報告已不用(OBSOLETE)和過期(EXPIRED)的備份文件。 RMAN REPORT OBSOLETE; RMAN LIST E

13、XPIRED BACKUP;3,刪除已不用(OBSOLETE)和過期(EXPIRED)的備份文件。 RMAN DELETE OBSOLETE; RMAN DELETE EXPIRED BACKUP;六 使用RMAN進(jìn)行恢復(fù) RMAN 的整個恢復(fù)過程可以分為還原(RESTORE)與恢復(fù)(RECOVER),他們在含義上是有很大差別的,一個是指物理意義的文件的還原與拷貝,一個是指數(shù)據(jù)庫一致性的恢復(fù)。數(shù)據(jù)庫的的恢復(fù)比較復(fù)雜,有許多不同的情況,必須在了解ORACLE數(shù)據(jù)庫結(jié)構(gòu)的條件下用不同的方法進(jìn)行處理。下面只列出最普通的恢復(fù)情況。恢復(fù)整個數(shù)據(jù)庫之前必須讓數(shù)據(jù)庫處于狀態(tài)的狀態(tài)(MOUNT)狀態(tài)。SQL

14、STARTUP MOUNT;然后執(zhí)行RMAN命令進(jìn)行還原和恢復(fù)。1,完全恢復(fù)1.1,恢復(fù)整個數(shù)據(jù)庫RMANRUN ALLOCATE CHANNEL DEV1 TYPE DISK;ALLOCATE CHANNEL DEV2 TYPE DISK;ALLOCATE CHANNEL DEV3 TYPE DISK;RESTORE DATABASE;RECOVER DATABASE;RELEASE CHANNEL DEV1;RELEASE CHANNEL DEV2;RELEASE CHANNEL DEV3;1.2,恢復(fù)指定表空間或數(shù)據(jù)文件 在恢復(fù)該表空間之前讓該表空間處于脫機的狀態(tài)(OFFLINE狀態(tài))。

15、 SQL ALTER TABLESPACE TBS OFFLINE; 然后通過RMN進(jìn)行恢復(fù)。 RMAN RUN ALLOCATE CHANNEL DEV1 TYPE DISK ;ALLOCATE CHANNEL DEV2 TYPE DISK ;ALLOCATE CHANNEL DEV3 TYPE DISK ;RESTORE TABLESPACE TBS ;RECOVER TABLESPACE TBS ;RELEASE CHANNEL DEV1 ;RELEASE CHANNEL DEV2 ;RELEASE CHANNEL DEV3 ;2,不完全恢復(fù)不完全恢復(fù)情況比較復(fù)雜,大致分一下四類。 1,

16、 基于時間的恢復(fù)(Time-based recovery) 2, 基于撤銷的恢復(fù)(Cancel-based recovery) 3, 基于改變的恢復(fù)(Change-based recovery) 4, 日志序列恢復(fù)(Log sequence recovery)3,塊級別的恢復(fù) RMAN可以在線對邏輯損壞的數(shù)據(jù)塊進(jìn)行恢復(fù)而不影響數(shù)據(jù)庫的運行。 RMAN BLOCKRECOVER DATAFILE 6 BLOCK 3;七 使用FLASHBACK進(jìn)行快速恢復(fù)發(fā)生以下類型的錯誤時,通常需要使用備份執(zhí)行恢復(fù): 介質(zhì)故障:因數(shù)據(jù)庫文件的物理問題而導(dǎo)致無法讀寫該文件 用戶錯誤:數(shù)據(jù)庫中的數(shù)據(jù)被誤更改或誤刪除

17、使用RMAN進(jìn)行介質(zhì)故障恢復(fù),使用FLASHBACK進(jìn)行用戶錯誤恢復(fù)。1,9i中的FLASHBACK:查詢數(shù)據(jù)庫的SCN變化情況SQL SELECT NAME,FIRST_CHANGE# FSCN,NEXT_CHANGE# NSCN,FIRST_TIME FROM V$ARCHIVED_LOG;獲得當(dāng)前SCNSQL SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FSCN FROM DUAL;創(chuàng)建恢復(fù)表,選擇恢復(fù)到合適的SCNSQL INSERT INTO TB_RECOVER SELECT * FROM TB AS OF SCN 19999999

18、99;2,10g中的FLASHBACK:10g的FLASHBACK進(jìn)行了增強和修改,通過回閃,用戶可以完成許多不可能恢復(fù)的工作,目前 10g 的回閃包括以下特性;1,oracle falshback Database.該特性允許 oracle 通過 Flashback database 語句,將數(shù)據(jù)庫會滾到前一個時間點或者scn 上,而不需要作時間點的恢復(fù)工作!2,oracle falshback table.該特性允許 oracle通過 flashback table 語句,將表會滾到前一個時間點或者 scn 上。3,oracle falshback drop.該特性允許 oracle把恢復(fù) drop掉的 table 或者索引。4,oracle falshback version query.該特性可以得到特

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論