oracle備份、恢復(fù)_第1頁(yè)
oracle備份、恢復(fù)_第2頁(yè)
oracle備份、恢復(fù)_第3頁(yè)
oracle備份、恢復(fù)_第4頁(yè)
oracle備份、恢復(fù)_第5頁(yè)
已閱讀5頁(yè),還剩73頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、就是需要控制文件,歸檔日志, 數(shù)文件和口令文件 )Server Session:( 服務(wù)器會(huì)話 )Oracle 服務(wù)器進(jìn)程, 將建立一個(gè)與目標(biāo)數(shù)據(jù)庫(kù)的會(huì)話。 由 目標(biāo)數(shù)據(jù)庫(kù)上的服務(wù)器進(jìn)程進(jìn)行備份、RMAI啟動(dòng)數(shù)據(jù)庫(kù)上的還原、恢復(fù)的實(shí)際操作。服務(wù)器進(jìn)程RMAI 的服務(wù)進(jìn)程是一個(gè)后臺(tái)進(jìn)程, 也用于 RMAI 工具與磁盤(pán) /磁帶等 份與恢復(fù)的所有工作, 在如下情況將產(chǎn)生一個(gè)服務(wù)進(jìn)程:用于與 RMANX具與數(shù)據(jù)庫(kù)之間的通信,I/O 設(shè)置之間的通信, 服務(wù)進(jìn)程負(fù)責(zé)備Channel:當(dāng)連接到目標(biāo)數(shù)據(jù)庫(kù)分配一個(gè)新的通道( 通道 )RMAN( 備份與恢復(fù)管理器 )基本知識(shí)RMAI是 ORACLE提供的一個(gè)備份

2、與恢復(fù)的工具,可以用來(lái)備份和還原數(shù)據(jù)庫(kù)文 件、 歸檔日志和控制文件。它也可以用來(lái)執(zhí)行完全或不完全的數(shù)據(jù)庫(kù)恢復(fù)。RMAI可以由命令行接口或者 OEM的Backu p Man ager GUI來(lái)控制。4.1 基本知識(shí)4.1.1 RMAN 的組件、概念1 RMAI 主要包括以下組件:Target Database: ( 目標(biāo)數(shù)據(jù)庫(kù) )RMAI 對(duì)其進(jìn)行備份與恢復(fù)的數(shù)據(jù)庫(kù), RMAI 可以備份數(shù)據(jù)文件, spfile 。(注意:RMAI不能用于備份聯(lián)機(jī)日志、初始化參一個(gè)通道是RMAh和目標(biāo)數(shù)據(jù)庫(kù)之間的一個(gè)連接,"allocate channel"命令在目 標(biāo)數(shù)據(jù)庫(kù)啟動(dòng)一個(gè)服務(wù)器進(jìn)程

3、, 同時(shí)必須定義服務(wù)器進(jìn)程執(zhí)行備份或者恢復(fù)操作 使用的 I/O 類型。通道控制命令可以用來(lái):控制RMAN使用的0/S資源,影響并行度指定 I/0 帶寬的限制值(設(shè)置 limit read rate 參數(shù))定義備份片大小的限制(設(shè)置 limit kbytes )指定當(dāng)前打開(kāi)文件的限制值(設(shè)置 limit maxopenfilesrecovery catalog: ( 恢復(fù)目錄 )用來(lái)保存?zhèn)浞菖c恢復(fù)信息的一個(gè)數(shù)據(jù)庫(kù), 不建議創(chuàng)建在目標(biāo)數(shù)據(jù)庫(kù)上。 用恢 復(fù)目錄記載的信息去判斷如何執(zhí)行需要的備份恢復(fù)操作。RMAN 利如果不采用恢復(fù)目錄,備份信息可以存在于目標(biāo)數(shù)據(jù)庫(kù)的 control file中。如果存

4、放在目標(biāo)數(shù)據(jù)庫(kù)的 control file 中,控件文件會(huì)不斷增長(zhǎng), 保存 RMAN 的 Script 。不能C0NTR0L_FILE_REC0RD_KEEP_TI(MdeEfault=7) :控件文件中 RMAN 保存信息最短時(shí)間。使用恢復(fù)目錄的優(yōu)勢(shì):可以存儲(chǔ)腳本, 記載較長(zhǎng)時(shí)間的備份恢復(fù)操作。RMAN Repository:(RMAN 恢復(fù)目錄數(shù)據(jù)庫(kù) )存放 recovery catalog( 單獨(dú)的數(shù)據(jù)庫(kù)?;謴?fù)目錄 )的數(shù)據(jù)庫(kù)。建議為恢復(fù)目錄數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)MML: (媒體管理庫(kù) )Media ManagementLayer 文件的 跟蹤管理。如果你想直接通過(guò) 體管理層,媒體管理層 的工具

5、如備份軟件可以調(diào)用 RMAr來(lái)進(jìn)行備份與恢復(fù)。(MML)是第三方工具或軟件,用于管理對(duì)磁帶的讀寫(xiě)與RMAN 備份到磁帶上,就必須配置媒2概念述語(yǔ)Backup Sets ( 備份集合 )備份集合的特性:包括一個(gè)或多個(gè)數(shù)據(jù)文件或歸檔日志,以 oracle 專有的格式 保存,有 一個(gè)完全的所有的備份片集合構(gòu)成,構(gòu)成一個(gè)完全備份或增量備份。Backup Pieces ( 備份片 )一個(gè)備份集由若干個(gè)備份片組成。 每個(gè)備份片是一個(gè)單獨(dú)的輸出文件。 一個(gè)備份 片的大 小是有限制的;如果沒(méi)有大小的限制, 備份集就只由一個(gè)備份片構(gòu)成。 備份片的大小不能 大于使用的文件系統(tǒng)所支持的文件長(zhǎng)度的最大值。Image

6、Copies 鏡像備份 鏡像備份是獨(dú)立文件(數(shù)據(jù)文件、歸檔日志、控制文件)的備份。它很類似操作系統(tǒng)級(jí) 的文件備份。它不是備份集或備份片,也沒(méi)有被壓縮。Full backup Sets 全備份集合 全備份是一個(gè)或多個(gè)數(shù)據(jù)文件中使用過(guò)的數(shù)據(jù)塊的的備份。 沒(méi)有使用過(guò)的數(shù)據(jù)塊 是不被 備份的,也就是說(shuō), oracle 進(jìn)行備份集合的壓縮。Incremental backup sets 增量備份集合 增量備份是指?jìng)浞菀粋€(gè)或多個(gè)數(shù)據(jù)文件的自從上一次同一級(jí)別的或更低級(jí)別的 備份以 來(lái)被修改過(guò)的數(shù)據(jù)塊。 與完全備份相同, 增量備份也進(jìn)行壓縮。File multiplexing恢復(fù)目錄同步多個(gè)數(shù)據(jù)文件可以在一個(gè)

7、備份集中。Recovery catalog resyncing使用恢復(fù)管理器執(zhí)行 backup 、 copy、restore 或者 switch 命令時(shí),恢復(fù)目錄 自動(dòng)進(jìn)行更 新,但是有關(guān)日志與歸檔日志信息沒(méi)有自動(dòng)記入恢復(fù)目錄。需要進(jìn) 行目錄同步。使用 resync catalog 命令進(jìn)行同步。RMAN> resync catalog;Incarnation 對(duì)應(yīng)物 在不完全恢復(fù)完成之后,通常需要使用 resetlogs 選項(xiàng)來(lái)打開(kāi)數(shù)據(jù)庫(kù)。 resetlogs 表示一個(gè) 數(shù)據(jù)庫(kù)邏輯生存期的結(jié)束和另一個(gè)數(shù)據(jù)庫(kù)邏輯生存期的 開(kāi)始。數(shù)據(jù)庫(kù)的邏輯生存期也被稱為 一個(gè)對(duì)應(yīng)物 (incarnati

8、on) 。每次使 用 resetlogs 選項(xiàng)來(lái)打開(kāi)數(shù)據(jù)庫(kù)后都會(huì)創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù) 對(duì)應(yīng)物。4.1.2 RMAN 的使用:命令行接口與腳本數(shù)據(jù)庫(kù)狀態(tài):RMAI恢復(fù)目錄數(shù)據(jù)庫(kù):必須 OPENRMAN> backup database;目標(biāo)數(shù)據(jù)庫(kù):根據(jù)不同情況,必須 MOUN或0PEN 1. 使用不帶恢復(fù)目錄的 RMAN設(shè)置目標(biāo)數(shù)據(jù)庫(kù)的 ORACLE_SID ,執(zhí)行:$ rman nocatalogRMAN> connect targetRMAN> connect target user/pwd>db2. 使用帶恢復(fù)目錄的 RMAN$ rman catalogrman/rm

9、anRMAN>connecttarget/ 連接本地?cái)?shù)據(jù)庫(kù)作為目標(biāo)數(shù)據(jù)庫(kù)RMAN> connecttarget user/pwd>db / 連接遠(yuǎn)程數(shù)據(jù)庫(kù)$ rman catalogrman/rman targetuser/pwd>db3. 命令行接口1、單個(gè)執(zhí)行2、運(yùn)行一個(gè)命令塊RMAN> RUN 2> copy datafile 10 to 3> '/oracle/prod/backup/prod_10.dbf'4> 3、運(yùn)行存儲(chǔ)在恢復(fù)目錄中的腳本:RMAN> RUN EXECUTE SCRIPT backup_whol

10、e_db ;4、運(yùn)行外部腳本: $ rman catalog rman/rman target / backup_db.rman $ rman cmdfile=backup.rman msglog=backup.logRMAN> backup_db.rmanRMAN> RUN backup_db.rman 如果在 cron 中執(zhí)行,注意在腳本中設(shè)置正確的環(huán)境變量,例:#set env export ORACLE_HOME=/opt/oracle/product/9.2 export ORACLE_SID=test export NLS_LANG="AMERICAN_AME

11、RICA.zhs16gbk" export PATH=$PATH:$ORACLE_HOME/bin rman cmdfile=backup_db.rman4. 使用腳本 創(chuàng)建或者取代腳本:RMAN> create script alloc_disk 2> # Allocates one disk 3> allocate channel dev1 type disk;4> setlimit channel dev1 kbytes 2097150 maxopenfiles 32 readrate 200;5> RMAN> replace script

12、rel_disk 2> # releases disk 3> release channel dev1;5> 刪除腳本:RMAN> DELETE SCRIPT Level0Backup;查看腳本:RMAN> PRINT SCRIPT Level0Backup;運(yùn)行腳本:RMAN> RUN EXECUTE SCRIPT backup_whole_db ;5. 運(yùn)行OS命令RMA支持通過(guò)執(zhí)行host命令暫時(shí)退出RMAN勺命令提示符而進(jìn)入到操作系統(tǒng)的 命令 環(huán)境。6. 執(zhí)行SQL語(yǔ)句 在 RMAN 的命令提示符后輸入 SQL 命令,然后在一對(duì)單引號(hào) (雙引號(hào)亦 可

13、)中輸入要 執(zhí)行的 SQL 語(yǔ)句,例如:RMAN> SQL 'ALTER SYSTEM CHECKPOINT'對(duì)于SELECT語(yǔ)句,無(wú)法得到結(jié)果。可以先執(zhí)行host再用SQL PLUSRMAN勺配置4.2 RMAN 的配置4.2.1 建立 Recovery Catalog 恢復(fù)目錄(1) 在目錄數(shù)據(jù)庫(kù)中創(chuàng)建恢復(fù)目錄所用表空間:SQL> create tablespace rman_ts datafile '/xxx/rman_ts.dbf' size 20M;(2) 在目錄數(shù)據(jù)庫(kù)中創(chuàng)建 RMAN 用戶并授權(quán):SQL> create user r

14、man identified by rman default espace rman_ts temporary tablespace temp quota unlimitedtabl on rman_ts;SQL> grant connect, resource, recovery_catalog_ownerto rman;(3) 在目錄數(shù)據(jù)庫(kù)中創(chuàng)建恢復(fù)目錄$ rman catalog rman/rmanRMAN> create catalog tablespace rman_ts;(4) 登記目標(biāo)數(shù)據(jù)庫(kù):一個(gè)恢復(fù)目錄可以注冊(cè)多個(gè)目標(biāo)數(shù)據(jù)庫(kù), 注冊(cè)目標(biāo)數(shù)據(jù)庫(kù)的命令為:$ RMANc

15、atalog rman/rman target user/pwd rcdb; RMAN>registerdatabase;422查看RMAN勺默認(rèn)設(shè)置SHOW命令必須連接目標(biāo)數(shù)據(jù)庫(kù)RMAN> show allRMAN> show channel;通道分配/RMAN> show device type;/ IO 設(shè)備類型RMAN>show retention policy;/保存策略/ 多個(gè)備份勺拷貝數(shù)目RMAN> show datafile backup copies;RMAN> show maxsetsize; / 備份集大小勺最大值RMAN>

16、 show exclude;/ 不必備份的表空間RMAN> show backup optimization;/ 備份的優(yōu)化423配置RMAN勺默認(rèn)設(shè)置1. 配置備份集文件勺格式 (format)RMAN> configure channel device type disk format'/u05/oracle/rmanback/%U'備份文件可以自定義各種各樣的格式,如下%c備份片的拷貝數(shù)%d數(shù)據(jù)庫(kù)名稱%D位于該月中的第幾天(DD)%M位于該年中的第幾月(MM)%F 為一個(gè)基于 DBIDc-IIIIIIIIII-YYYYMMDD-QQ,唯一的名稱 , 這個(gè)格式的

17、形式其中個(gè)IIIIIIIIII為該數(shù)據(jù)庫(kù)勺 DBID, YYYYM M DD 為日期, QQ 是一1-256 勺序列%n數(shù)據(jù)庫(kù)名稱,向右填補(bǔ)到最大八個(gè)字符%u一個(gè)八個(gè)字符的名稱代表備份集與創(chuàng)建時(shí)間%p該備份集中的備份片號(hào),從 1 開(kāi)始到創(chuàng)建的文件數(shù)%U一個(gè)唯一的文件名,代表 %u_%p_%c%s備份集的號(hào)%t備份集時(shí)間戳%T年月日格式 (YYYYMMDD)2.配置默認(rèn) IO 設(shè)備類型( device type )IO 命令設(shè)備類型可以是磁盤(pán)或者磁帶,在默認(rèn)的情況下是磁盤(pán),可以通過(guò)如下的 進(jìn)行重新配置。RMAN> configure default device t ype to disk

18、;RMAN> configure default device t ype to sbt;注意,如果換了一種 IO 設(shè)備,相應(yīng)的配置也需要做修改, 如RMAN> configure device type sbt parallelism 2;3. 配置自動(dòng)分配的通道( Chanel )RMAN> configure channel device type disk format'/U01/ORACLE/BACKUP/%U在運(yùn)行塊中,手工指定通道分配,這樣的話,將取代默認(rèn)的通道分配。RMAN> Run allocate channel cq type disk f

19、ormat='/u01/backup/%u.bak'通道的一些特性: 讀的速率限制Allocate channel rate = integer最大備份片大小限制Allocate cha nnel max pi ecesize = in teger最大并發(fā)打開(kāi)文件數(shù)(默認(rèn) 16 )Allocate cha nnel max open file = in teger 4. 配置默認(rèn)的保存策略 ( Retention Policy)保存策略是管理備份與副本有效期或者是否有效的一種方法。 恢復(fù)數(shù)據(jù)庫(kù)的時(shí)候Oracle 不 考 慮 失效 的 備 份。我 們可 以 定 義 兩 種 保存

20、策 略:恢復(fù)窗口備份保存策略( recovery window backup retention policy 和冗余備份保存策略( redundancy backup retention policy) 備份策略保持分為兩個(gè)保持策略: 一個(gè)是時(shí)間策略,決定至少有一個(gè)備份能恢 復(fù)到指定的日期 一個(gè)冗余策略, 規(guī)定至少有幾個(gè)冗余的備份?;謴?fù)窗口備份保存策略 , 這種保存策略類型的使用基于數(shù)據(jù)庫(kù)可能恢復(fù)到的最 早的日期。 例如,假設(shè)今天是星期一,此前存在 3 個(gè)備份。第一個(gè)備份在 昨天生成的,第二個(gè)備份是上星期四生 成的,而最后一個(gè)備份是 10 天前 備份的。假如恢復(fù)窗口是 7 天,那么昨天和上星

21、期 四的備份是有效備份, 而 10 天前的備份會(huì)成為廢棄備份。下面的命令將恢復(fù)窗口配置為 7 天:RMAN> configure retention policy to recovery window of 7 days;冗余備份保存策略 使用這種保存策略,RMA會(huì)從最新備份開(kāi)是保留N個(gè)數(shù)據(jù)備份,其余的廢棄。例 如,如果有四個(gè)備份,而冗余數(shù)是 3,那么最早的那個(gè)備份將被廢棄。下面的 命令將 備份策略設(shè)置為 3 :RMAN> configure retention policy to redundancy3;設(shè)置NONE可以把使備份保持策略失效,Clear將恢復(fù)默認(rèn)的保持策略RMAN

22、> configure retention policy to none;例: 保證至少有一個(gè)備份能恢復(fù)到 Sysdate-5 的時(shí)間點(diǎn)上 , 之前的備份將標(biāo)記為RMAN> configure retention policy to recovery window of 5 days;Obsolete至少需要有三個(gè)冗余的備份存在,如果多余三個(gè)備份以上的備份將標(biāo)記為冗余RMAN> configure retention policy to redundancy 5;5. 配置多個(gè)備份的拷貝數(shù)目 ( backup copies )如果覺(jué)得單個(gè)備份集不放心, 可以設(shè)置多個(gè)備份集的拷

23、貝, 如:RMAN> configure datafile backup copies for device type disk to 2;RMAN> configure archivelog backup copies for device type disk to 2;如果指定了多個(gè)拷貝, 可以在通道配置或者備份配置中指定多個(gè)拷貝地點(diǎn):RMAN> configure channel device type disk format'/u01/backup/%U', '/u02/backup/%U'RMAN> backup datafil

24、e n format '/u01/backup/%U', '/u02/backup/%U'6. 設(shè)置并行備份 ( ARALLELISM )RMA支持并行備份與恢復(fù),也可以在配置中指定默認(rèn)的并行程度。如:RMAN> configure device type disk parallelism 4;指定在以后的備份與恢復(fù)中,將采用并行度為 4 ,同時(shí)開(kāi)啟 4 個(gè)通道進(jìn)行備份 與恢 復(fù),當(dāng)然也可以在RUN的運(yùn)行塊中手工分配多個(gè)通道來(lái)決定備份與恢復(fù)的 并行程度。 并行的數(shù)目決定了開(kāi)啟通道的個(gè)數(shù)。如果指定了通道配置,將采用 指定的通道,如果沒(méi)有指定通道,將采用默認(rèn)通

25、道配置。還可以在BACKUP命令中使用指定FILESPERSET或者指定(datafile 1,4,5 channel c1 tag=DF1)(datafile 2,3,6 channel c2 tag=DF2)7. 設(shè)置控制文件自動(dòng)備份 (autobackup on)通過(guò)如下的命令,可以設(shè)置控制文件的自動(dòng)備份RMAN> configure controlfile autobackup on;對(duì)于沒(méi)有恢復(fù)目錄的備份策略來(lái)說(shuō), 這個(gè)特性是特別有效的, 控制文件的自動(dòng)備 份發(fā)生在任何 backup 或者 copy 命令之后,或者任何數(shù)據(jù)庫(kù)的結(jié)構(gòu)改變之 后或者 copy可以用如下的配置指定控制

26、文件的備份路徑與格式RMAN> configure controlfile autobackup format for type disk to '%f'在備份期間, 將產(chǎn)生一個(gè)控制文件的快照, 用于控制文件的讀一致性, 如下配置:RMAN> configure snapshot controlfile name to'/u01/app/oracle/product/9.0.2/dbs/snapcf_U02.f'8. 設(shè)置備份優(yōu)化選項(xiàng) ( optimization )可以在配置中設(shè)置備份的優(yōu)化,如RMAN> configure backup o

27、ptimization on;如果優(yōu)化設(shè)置打開(kāi),將對(duì)備份的數(shù)據(jù)文件、 歸檔日志或備份集運(yùn)行一個(gè)優(yōu)化算法。4.2.4 RMAN 會(huì)話的設(shè)置set 命令與 configure 命令很相似,但是 set 命令設(shè)置不是永久 命令定義只應(yīng)的。 set用于當(dāng)前RMAN會(huì)話的設(shè)置??梢杂糜赗UN代碼之外的命令有:set echo on | off/ 顯示或關(guān)閉RMAN顯示set DBID dbidn 符。/ 指定一個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)標(biāo)識(shí)F面的set命令只能在RUN代碼中使用: set newname:用于 TSPITR 或者數(shù)據(jù)庫(kù)復(fù)制操作, 指定新的數(shù)據(jù)庫(kù)文件名, 將數(shù)據(jù)庫(kù)移動(dòng) 到新的系統(tǒng)中并且文件名不同的時(shí)

28、候可以用此命令。set maxcorrupt for datafile用于定義 RMAN操作失敗之前允許的數(shù)據(jù)塊訛誤的數(shù)量的目的地。set archivelog destination可以修改存儲(chǔ)歸檔的重做日志 archive_log_dest_1 set 命令和 until 子句: 可以定義數(shù)據(jù)庫(kù)時(shí)間點(diǎn)恢復(fù)操作所使用的具體的時(shí)間點(diǎn)、 SCN 或者日志序列 號(hào),例:set until time "to_date('2005/08/01 13:00:00','yyyy/mm/dd hh24:mi:ss')"set backup copies :

29、 使用該命令可以定義為備份集的每個(gè)備份片創(chuàng)建的鏡像副本數(shù)。例:RMAN> RUN set maxcorrupt for datafile 3 to 10;set backup copies = 2;backup database;Copy 鏡像拷貝與恢復(fù)4.3 Copy 鏡像拷貝與恢復(fù)Copy鏡像拷貝命令可以創(chuàng)建數(shù)據(jù)庫(kù)數(shù)據(jù)文件、歸檔重做日志或者控制文件的 精確副本。 RMAN 副本與這些文件的區(qū)別僅在于名稱和(或)位置的區(qū)別。功 能相當(dāng)于用戶管理的備 份恢復(fù)中的熱備份。備份副本的好處是恢復(fù)比較快,恢 復(fù)時(shí)可以不用拷貝,指定新位置即可。Copy鏡像拷貝至少要在mou nt狀態(tài)下運(yùn)行。Cop

30、y鏡像拷貝可作為增量備份的Level 0Oracle10g 開(kāi)始,允許使用單條命令"backup as copy" 進(jìn)行數(shù)據(jù)庫(kù)拷貝。4.3.1 備份 生成數(shù)據(jù)文件副本:RMAN> copy datafile 3 to 'd:backupdatafilecopyusers01.dbf.bak'RMAN> copy datafile 'd:oracleoradataora9iusers01.dbf' to 'd:backupdatafilecopyusers01.dbf.bak'生成控制文件副本:RMAN> co

31、py current controlfile toRMAN> CONFIGURE CONTROLFILE AUTOBACKUP is ON;備份 ARCHIVELOG 副本: / 只能一個(gè)一個(gè)的來(lái)備份,而不能指定一個(gè)范圍RMAN> copy archivelog 'd:oracleoradataarcming_351.arc' to 'd:oracleorabackuparcming_351.arc'并行設(shè)置:1. RMAN> configure device type . parallelism = 3;/only 2 channel, on

32、e for writting data to disk2. 手工分配多個(gè)通道3. 在命令中指定多個(gè)文件RMAN> copy datafile 'xx' to 'xx2', datafile 'yy' to 'yy2', .;塊檢查:CHECK LOGICAL 選項(xiàng) MAXCORRUPT數(shù) V$C OP Y_CORRU PTION在復(fù)制操作中, Oracle 服務(wù)器進(jìn)程對(duì)每個(gè)塊執(zhí)行校驗(yàn)和計(jì)算以檢測(cè)是否有塊損壞。RMAN在還原副本時(shí)也要核對(duì)校驗(yàn)和 。該過(guò)程稱為物理?yè)p壞檢測(cè) ??梢允?用NOCHECKSUM選項(xiàng)取消校驗(yàn)和操作,從而

33、加快復(fù)制進(jìn)程。如果數(shù)據(jù)庫(kù)已在維 護(hù)塊校驗(yàn)和,則此選項(xiàng)無(wú)效。缺省情況下,禁用邏輯損壞的錯(cuò)誤檢查。可以使用 CHECK LOGICAL 選項(xiàng)測(cè)試通過(guò)了物理?yè)p壞檢查的數(shù)據(jù)和索引塊, 查看 它們是否存在邏輯損壞,如行片或索引條目損壞。如果檢測(cè)到任何塊存在 邏輯損壞,則將該塊記錄到服務(wù)器進(jìn)程的警報(bào)日志和跟蹤文件中??梢允褂?MAXCORRUPT 參數(shù)設(shè)置邏輯和物理?yè)p壞的閾值。 只要在某個(gè)文件中 檢 測(cè)到的邏輯和物理?yè)p壞總和低于該值,則 RMAN 命令完成,同時(shí) Oracle將損壞塊的范圍植入到 V$COPY_CORRUPTION視圖。如果超 出 MAXCORRUJP則該命令終 止,并且不植入視圖。當(dāng)并行

34、度比較高時(shí),占用的計(jì)算機(jī)資源較多,但備份操作完成 速度較快。缺省情況下將啟用對(duì)物理 損壞的錯(cuò)誤檢查。有關(guān)在備份過(guò)程中遇到的損壞數(shù) 據(jù)文件塊的信息將記錄在控 制文件和警報(bào)日志中。4.3.2 恢復(fù) 查看所有的 Copy 鏡像拷貝:RMAN> list copy;數(shù)據(jù)文件副本還原:還原時(shí)可以offline數(shù)據(jù)文件所屬表空間,然后利用 OS拷貝命令恢復(fù)副本。還可以用 restore (datafile num) from datafilecopy 命令來(lái) 從數(shù)據(jù)文件副本中還原數(shù) 據(jù)文件,然后再用 recover 命令來(lái)恢復(fù)。例如:RMAN> sql "alter database

35、 datafile 5 offline"RMAN> restore (datafile 5) from datafilecopy;datafile 5 online"RMAN> recover datafile 5;RMAN> sql "alter database注意,上面的圓括號(hào)很重要,如果沒(méi)有restore命令就會(huì)執(zhí)行失敗Backup 備份與恢復(fù)4.4 Backup 備份與恢復(fù)Backup 備份命令生成存,Backup sets ( 備份集合 ) ,以 oracle 專有的格式保由一個(gè)完全的所有的備份片集合構(gòu)成,構(gòu)成一個(gè)完全備份或增量備份。

36、4.4.1 BACKUP 備份命令選項(xiàng)設(shè)置標(biāo)記 (TAG)RMAN> backup database tag='test backup'限制備份集大小RMAN> backup database maxsetsize=100M;只備份新增部分RMAN> backup incremental level 0 database;備份控制文件同時(shí)備份 SPFILE/ 默認(rèn)是 offRMAN> backup current controlfile;RMAN> configure controlfile autobackup on;也可以在備份數(shù)據(jù)庫(kù)或者文件的

37、時(shí)候加上 include current controlfile 選項(xiàng)。 例如:RMAN> backup database include current controlfile;備份時(shí)如果包含了 SYSTEMS空間,將自動(dòng)備份控件文件和 SP FILERMAN> backup file 1;使用自動(dòng)備份進(jìn)行恢復(fù) :RMAN> restore spfile/controlfile to '/xx/xx' from autobackup;備份歸檔日志 (9i)RMAN> backup archivelog all;RMAN> backup . plu

38、s archivelog; /在備份其他時(shí)同時(shí)備份歸檔日志plus archivelog 隱含如下步驟:運(yùn)行一個(gè) ALTER SYSTEM ARCHIVELOG CURRENT運(yùn)行 BACKUP ARCHIVELOG ALL 命令。注意如果備份優(yōu)化被啟用,RMA只會(huì)備份未備份過(guò)的日志備份BACKUP命令中定義的文件 運(yùn)行 ALTER SYSTEM ARCHIVE LOG CURRENT備份所有的剩下的歸檔日志備份完后刪除歸檔日志RMAN> backup . ARCHIVELOG all delete all input;修改備份集的保存策略 例如:將備份設(shè)置為永久有效RMAN> b

39、ackup database keep forever logs|nologs;設(shè)置為有效期 180 天RMAN> backup database keep until time='sysdate+180'重寫(xiě) configure exclude / noexclude通過(guò) configure exclude 可以配置 RMAN 不備份上次備份以來(lái)沒(méi)有發(fā) 生變 化的數(shù)據(jù)文件。如果要確保 RMAN備份這些數(shù)據(jù)文件,可以在 backup命令中添加 noexclude 選項(xiàng)。 例如:RMAN> backup database noexclude;跳過(guò)脫機(jī)的、不可存取的或者

40、只讀的數(shù)據(jù)文件RMAN> backup database skip offline skipinaccessible skipreadonly;強(qiáng)制備份只讀的數(shù)據(jù)文件RMAN> backup database force;備份指定周期內(nèi)沒(méi)有備份的數(shù)據(jù)文件RMAN> backup database not backed up;RMAN> backup database not backed up since time='sysdate-2'在備份操作期間檢查邏輯訛誤/ 在檢查邏輯錯(cuò)誤的同時(shí)進(jìn)行/ 只檢查RMAN> backup check logic

41、al database; 備份RMAN> backup validate check logical database;建立壓縮備份集RMAN> backup as compressed backupset tablespace usersFORMAT='D:BACKUP%d_%s.dbf'442 RESTORE/RECOVE恢復(fù)命令選項(xiàng)數(shù)據(jù)庫(kù)恢復(fù)RMAN> restore/revover database ;表空間恢復(fù)RMAN> restore/revover tablespace xx ;只讀表空間的恢復(fù) 默認(rèn)情況下,即使丟失了只讀的數(shù)據(jù)文件, RM

42、AN 也不會(huì)在執(zhí)行完全數(shù)據(jù)庫(kù)還 原 操作時(shí)候還原只讀的數(shù)據(jù)文件。要在完全恢復(fù)期間還原只讀的數(shù)據(jù)文件,就 必須在restorer令中使用check readonl參數(shù):RMAN> RESTORE DATABASE CHECK READONLY;恢復(fù)SPFILE/控制文件 使用自動(dòng)備份恢復(fù)SPFILE/控制文件RMAN> startup nomount;RMAN> set dbid=153910023RMAN> restore controlfile from autobackupRMAN> restore spfile/controlfile to '/xx

43、/xx' from autobackup ;RMAN> restore controlfile from'/arch/ct_c-2347671489-20060630-00'聯(lián)機(jī)狀態(tài):目標(biāo)數(shù)據(jù)庫(kù) mount或openRMAN> restore controlfile to 'd:tempcontrol01.ctl'歸檔重做日志的還原RMAN> RESTORE ARCHIVELOG ALL;RMAN> RESTORE ARCHIVELOG FROM LOGSEQ=1 uNTIL LOGSEQ=20;RMAN> RESTORE

44、ARCHIVELOG FROM LOGSEQ=1;也可以用 SET 命令來(lái)指定歸檔日志的還原位置,例如:RMAN> run set archivelog destination to "d:temp"restore archivelog all;數(shù)據(jù)文件副本還原RMAN> sql "alter datafile 5 offline"RMAN> restore (datafile 5) from datafilecopy;RMAN> recover datafile 5;RMAN> sql "alter datafi

45、le 5 online"請(qǐng)注意,上面的圓括號(hào)很重要restore 或者是否該備還原檢查與恢復(fù)測(cè)試 與備份檢查一樣,還原操作也可以檢查是否能正常份集是否有效。如:RMAN> RESTORE DATABASE VALIDATE;RMAN>VALIDATEB ACKUPSET 218;RMAN> RESTORE DATABASE VALIDATE CHECK LOGICAL ;從指定的 tag 恢復(fù):RMAN> RESTORE FROM t'agx=xxx '不完全恢復(fù)的還原:1set until time/SCN/ 2RMAN> restor

46、e database until scn 1000;RMAN>restore database "to_date('2005/08/01 13:00:00','yyyy/mm/dd hh24:mi:ss')"RMAN> restore database until sequence 100 thread 1;塊級(jí)別的恢復(fù) 塊恢復(fù) Block Media Recovery (BMR) ,塊是恢復(fù)的最小單元,通過(guò)塊可以減少 恢復(fù) 時(shí)間,而且數(shù)據(jù)文件可以在線?;謴?fù)塊的時(shí)候,必須指定具體的塊號(hào),如:RMAN> blockrecove

47、rdatafile 6 block 3;具體請(qǐng)見(jiàn) 4.7.4 塊媒體恢復(fù) Block Media Recovery (BMR)4.4.3 非歸檔模式下的 BACKUP 備份與恢復(fù)恢復(fù)目錄:打開(kāi)目標(biāo)數(shù)據(jù)庫(kù):例程啟動(dòng),數(shù)據(jù)庫(kù)加載, mount 不能 openMOUNT犬態(tài)不能Open,所以屬于脫機(jī)備份。日志,只有完全備份和 readonly/offline 表空間和數(shù) 所以非歸檔模式最好不用RMAN進(jìn)行備份,備份語(yǔ)法因?yàn)槟繕?biāo)數(shù)據(jù)庫(kù)不在歸檔模式下,所以當(dāng)進(jìn)行備份 / 恢復(fù)操作的時(shí)候數(shù)據(jù)庫(kù)無(wú)法 打開(kāi)。目標(biāo)數(shù)據(jù)庫(kù)只能在 非歸檔模式不備份 redo 據(jù)文件 備份是有意義的, 與歸檔模式相 同,所以這里只做

48、簡(jiǎn)單介紹。4.4.3.1 全庫(kù)備份 例: 使用默認(rèn)的設(shè)置脫機(jī)全備份的語(yǔ)句RMAN> shutdown immediate;RMAN> startup mount;RMAN> backup database;RMAN> startup;例:不使用默認(rèn)的設(shè)置執(zhí)行脫機(jī)備份操作,在備份命令中指定備份選項(xiàng)RMAN> shutdown immediate;RMAN> startup mount;RMAN> run allocate channel c1 type disk format '/xxx/ming_%U'allocate channel

49、c2 type disk format '/xxx/ming_%U'backup full tag full_db_backup format "/backups/db_t%t_s%s_p%p" (database);backup current controlfile;release channel c1 ;release channel c2 ;在這個(gè)例子中,我們分配了兩個(gè)通道,備份位置是在 /xxx 。默認(rèn)情況下,如果備 份數(shù)據(jù) 文件 1 (SYSTEM 表空間 ) ,控制文件和參數(shù)文件也會(huì)備份。 可以通過(guò)下面的 命令顯示恢復(fù)目錄中記載的備份集信息:R

50、MAN> list backupset of database;4.4.3.2 全庫(kù)備份的恢復(fù)$ rman target /RMAN> startup mountRMAN> restore database;RMAN> recover database;RMAN> alter database open resetlogs;4.4.3.3 表空間備份 只有 readonly/offline 表空間的備份才有意義。RMAN> run 2> allocate channel dev1 type disk;3> backup 4> tag tbs

51、_users_read_only 5> format "/oracle/backups/tbs_users_t%t_s%s" 6> (tablespace users);7> 使用下列命令來(lái)顯示恢復(fù)目錄中該表的備份信息:RMAN> list backupset of tablespace users;4.4.3.4 表空間備份的恢復(fù)RMAN> RUN sql "alter tablespace xx offline immediate;" restore tablespace xx;recover tablespace xx

52、;sql "alter tablespace xx online;"4.4.3.5 備份控制文件RMAN> run 2> allocate channel dev1 type "SBT_TAPE"3> backup 4> format "cf_t%t_s%s_p%p" 5> tag cf_monday_night 6> (current controlfile);7> release channel dev1;8> 注:數(shù)據(jù)庫(kù)完全備份將自動(dòng)備份控制文件。 ( 或者備份時(shí)加 include

53、 current controlfile)444歸檔模式下的BACKU備份與完全恢復(fù) 要用 RMAN 進(jìn)行聯(lián)機(jī)備份操作,數(shù)據(jù)庫(kù)就必須位于 ARCHIVELOG 模式。 恢復(fù) 目錄必須打開(kāi),目標(biāo)數(shù)據(jù)庫(kù)例程必須啟動(dòng),數(shù)據(jù)庫(kù)加載或者打開(kāi)。這部分只介紹完全恢復(fù),不完全恢復(fù)見(jiàn)下一節(jié)。4.4.4.1 整庫(kù)備份與恢復(fù)備份命令: 只備份數(shù)據(jù)文件 ( 如果 configure controlfile autobackup on; 將自動(dòng) 包括控件文件,SPFILE):RMAN> backup database;同時(shí)備份歸檔日志,然后將備份后的歸檔日志刪除RMAN> backup database p

54、lus archivelog delete input;明確指定同時(shí)備份控件文件:RMAN> run allocate channel c1 type disk;sql 'alter system archive log current'backup full database include current controlfile tag 'dbfull' format '/u06/oracle/rmanback/full_%u_%s_%p'sql 'alter system archive log current'rel

55、ease channel c1;可以用RMAN的plus archvielog 選項(xiàng)簡(jiǎn)化數(shù)據(jù)庫(kù)備份:RMAN> run 2> backup database 3> format '/xxfull%d_%T_%s' 4> plus archivelog 5> format '/xx/arch_%d_%T_%s' 6> delete all input;7> 完全恢復(fù): 目標(biāo)數(shù)據(jù)庫(kù)必須是 mount 狀態(tài)$ rman target /RMAN> startup mountRMAN> restore databas

56、e;RMAN> recover database;RMAN> alter database open;4.4.4.3 表空間的備份與恢復(fù) 備份命令:RMAN> backup tablespace users ;例:RMAN> RUN allocate channel c1 type disk;backup tablespace users tag 'ts_users' format '/oracle/rmanback/ts_%u_%s_%p' ;release channel c1;恢復(fù): 如果我們只丟失了特定的表空間的數(shù)據(jù)文件,那么我們

57、可以選擇只恢復(fù)這個(gè)表空 間,而 不是恢復(fù)整個(gè)數(shù)據(jù)庫(kù)。表空間恢復(fù)可以在不關(guān)閉數(shù)據(jù)庫(kù)的情況下進(jìn)行, 只需要將需要恢復(fù)的表空間offli ne 。RMAN> RUN sql "alter tables pace xx offline immediate;" restore tables pace xx;recover tables pace xx;sql "alter tables pace xx on li ne;"恢復(fù)到一個(gè)不同的位置:RMAN> RUN sql "alter tables pace xx offline immedi

58、ate;"SET NEWNAME for datafile 1 to '/xx'restore tables pace xx;switch datafile 1;recover tables pace xx;sql "alter tables pace tbs1 on li ne;"4.443數(shù)據(jù)文件的備份與恢復(fù) 備份命令:RMAN> backup datafile 3;RMAN> backup datafile 'D:ORAC LEORADATATESTTEST.DB'恢復(fù)命令:數(shù)據(jù)文件恢復(fù)與表空間恢復(fù)類似。假設(shè)數(shù)據(jù)文件號(hào)為 5 的文件丟 失,文件名是:'E:ORACLEORADATAUSERS.DBF'那么我們恢復(fù)的時(shí)候可以指定文件號(hào),也 可以指定 文件名。RMAN> run 2> allocate cha nnel dev1 type disk;3> sql "alter tables pace users offline immediate"4> restore datafile 4;- 或者 restore'E:ORACLEORADATAUSERS.DBF' 5> recover dat

溫馨提示

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

評(píng)論

0/150

提交評(píng)論