您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么掌握RMAN組成、配置、檢測”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么掌握RMAN組成、配置、檢測”吧!
1. RMAN 執(zhí)行程序, 也就是RMAN 命令.
2. Server session : 服務(wù)器上的進(jìn)程, 是真正用來干活的.
3. Target database: 你想要進(jìn)行備份的數(shù)據(jù)庫
4. RMAN Repository: RMAN的源數(shù)據(jù), 這部分內(nèi)容可以存儲在control file, 也可以單獨(dú)存儲在數(shù)據(jù)庫中, 用來保存?zhèn)浞菖c恢復(fù)信息的一個(gè)數(shù)據(jù)庫,不建議創(chuàng)建在目標(biāo)數(shù)據(jù)庫上,利用恢復(fù)目錄可以同時(shí)管理多個(gè)目標(biāo)數(shù)據(jù)庫,存儲更多的備份信息,可以存儲備份腳本。如果不采用恢復(fù)目錄,可以采用控制文件來代替恢復(fù)目錄,oracle 9i因?yàn)榭刂莆募詣觽浞莸墓δ埽每刂莆募艽蟪潭壬峡梢匀〈謴?fù)目錄。
5. Channel: 是一個(gè)通道, 用來連接數(shù)據(jù)庫與備份的存儲介質(zhì).
6. Media Management Library: 一般就是指存儲介質(zhì)的制造商給出的驅(qū)動. 我們一般就存儲在磁盤.
注: rman 不能用戶備份 聯(lián)機(jī)重做日志文件, parameter file , password file, 個(gè)人還不確定 !
這里最好在另一個(gè)專門再創(chuàng)建個(gè)數(shù)據(jù)庫, 而不是用原來的target數(shù)據(jù)庫. 然后, 在那個(gè)新的數(shù)據(jù)庫上創(chuàng)建以下內(nèi)容: 所以, 還是利用 control file 來保存元數(shù)據(jù)信息吧, 只是當(dāng)有多個(gè)數(shù)據(jù)庫需要備份時(shí), 再考慮使用回復(fù)目錄.
1) 建立恢復(fù)目錄使用的表空間:
create tablespace rman_ts datafile '/xxx/rman_ts.dbf' size 20M; (在target數(shù)據(jù)庫中建立就可以)
2) 在目錄數(shù)據(jù)庫中創(chuàng)建 rman 用戶并授權(quán):
create user rman identified by rman default tablespace rman_ts temporary tablespace temp quota unlimited on rman_ts;
grant connect, resource, recovery_catalog_ownerto rman; -- 授權(quán)
3) 在目錄數(shù)據(jù)庫中創(chuàng)建恢復(fù)目錄
rman catalog rman/rman (操作系統(tǒng)提示符下, 連接到 目錄數(shù)據(jù)庫)
create catalog tablespace rman_ts; -- 創(chuàng)建恢復(fù)目錄
4) 登記目標(biāo)數(shù)據(jù)庫, 一個(gè)恢復(fù)目錄可以注冊多個(gè)目標(biāo)數(shù)據(jù)庫, 注冊目標(biāo)數(shù)據(jù)庫的命令為:
rman catalog rman/rman target sys/sys;
register database;
連接到目標(biāo)數(shù)據(jù)庫是指建立在RMAN和目標(biāo)數(shù)據(jù)庫之間的連接。RMAN可以在無恢復(fù)目錄和有恢復(fù)目錄兩種方式下連接到目標(biāo)數(shù)據(jù)。
另外, 這里也不推薦使用 sys 用戶來連接目標(biāo)數(shù)據(jù)庫(target), 應(yīng)該另外建立一個(gè)用戶, 并給這個(gè)用戶 sysdba 權(quán)限.
(1)C:\>rman target /
(2)C:\>rman target sys/password nocatalog
有恢復(fù)目錄的, 其實(shí), 說白了, 就是分別針對 目標(biāo) 數(shù)據(jù)庫和 目錄 數(shù)據(jù)庫, 分別建立兩次鏈接
(1)首先輸入 rman, 進(jìn)入 rman 命令環(huán)境
-- 連接目標(biāo)數(shù)據(jù)庫: connect target sys/sys
-- 連接到恢復(fù)數(shù)據(jù)庫: connect catalog rman/rman
(2)直接一起連接:
rman target sys/sys catalog rman/rman
在 rman 中有恢復(fù)目錄的情況下, 連接目標(biāo)數(shù)據(jù)庫后還需要注冊數(shù)據(jù)庫, 即將目標(biāo)數(shù)據(jù)庫中的控制文件轉(zhuǎn)到恢復(fù)目錄中, 在同一個(gè)恢復(fù)目錄中只能注冊一個(gè)目標(biāo)數(shù)據(jù)庫.
register database
(1)nocatalog方式就是用control file作為catalog,每一次備份都要往控制文件里面寫好多備份信息,控制文件里面會有越來越多的備份信息。若為catalog則必須要首先要?jiǎng)?chuàng)建目錄備份數(shù)據(jù)庫,建立恢復(fù)目錄。
(2)當(dāng)使用rman nocatalog恢復(fù)時(shí),數(shù)據(jù)庫必須是處于“mount”狀態(tài)的。而Oracle startup mount的前提條件是control必須存在。因此,你必須在恢復(fù)datafile之前先恢復(fù)controlfile。使用rman catalog方式時(shí),可以startup nomount然后restore controlfile;但使用rman nocatalog時(shí),必須先用文件方式恢復(fù)controlfile。
(3)恢復(fù)步驟不同
rman nocatalog恢復(fù):
1) 建立oracle運(yùn)行環(huán)境(包括init或sp文件)
2) 文件方式恢復(fù)controlfile到init文件指定的位置 (copy, paste)
3) startup mount
4) rman,恢復(fù)datafile
5) alter database open resetlogs
rman catalog恢復(fù):
1) 建立oracle運(yùn)行環(huán)境(包括init或sp文件)
2) rman ,restore controfile
3) alter database mount
4) rman, restore datafile
5) alter database open resetlogs
一、通道及通道分配
1.通道的概念
一個(gè)通道代表一個(gè)到設(shè)備(磁盤或磁帶)的數(shù)據(jù)流并且在目標(biāo)數(shù)據(jù)庫或輔助數(shù)據(jù)庫實(shí)例上產(chǎn)生一個(gè)相應(yīng)的服務(wù)器會話(server session)
多個(gè)通道則產(chǎn)生多個(gè)服務(wù)器會話,這些服務(wù)器會話(或進(jìn)程)將完成備份、還原與恢復(fù)操作等
通道分為備份或還原到磁盤的磁盤通道(disk channel)、備份還原到磁帶的磁帶通道(SBT)
在對數(shù)據(jù)庫執(zhí)行備份和恢復(fù)前必須先分配通道
ALLOCATE CHANNEL命令在目標(biāo)數(shù)據(jù)庫啟動一個(gè)服務(wù)器進(jìn)程,同時(shí)必須定義服務(wù)器進(jìn)程執(zhí)行備份或者恢復(fù)操作使用的I/O類型
實(shí)際上是通過channel來控制備份及恢復(fù)時(shí)的行為
通道控制命令的作用:
控制RMAN使用的OS資源
影響并行度
指定I/O 帶寬的限制值(設(shè)置limit read rate參數(shù))
定義備份片大小的限制(設(shè)置limit kbytes)
指定當(dāng)前打開文件的限制值(設(shè)置limit maxopenfiles)
2.自動分配通道
可以使用下列命令來自動分配通道,一旦RMAN設(shè)定了下列參數(shù),則RMAN根據(jù)這些配置來自動分配通道
CONFIGURE DEVICE TYPE ...PARALLELISM
CONFIGURE DEFAULT DEVICE TYPE
CONFIGURE CHANNEL
假定在RMAN提示符下執(zhí)行backup datafile 1,則RMAN會使用預(yù)先配置的通道參數(shù)為之分配通道
這些命令backup、restore、delete在非run塊中運(yùn)行時(shí)會根據(jù)configure命令設(shè)定的值自動分配通道
但上述命令在run塊中則需要手動分配通道
CONFIGURE DEFAULT DEVICE TYPE TO sbt; -- 默認(rèn)是 disk
CONFIGURE DEVICE TYPE DISK PARALLELISM 3; -- 為自動分配通道配置并行度, 影響 I/O 性能等
-- 配置自動通道首選項(xiàng)
CONFIGURE CHANNEL DEVICE TYPE DISK
FORMAT = ‘/BACKUP/RMAN/%U’;
CONFIGURE CHANNEL DEVICE TYPE DISK
MAXPIECESIZE 4G;
3.手動分配通道
BACKUP,COPY,RESTORE,RECOVER等命令至少需要分配一個(gè)通道
分配一個(gè)通道將在目標(biāo)數(shù)據(jù)庫所在服務(wù)器啟動一個(gè)服務(wù)進(jìn)程,分配的通道實(shí)際上是指定了并發(fā)度
可以指定備份到不同的介質(zhì),并且可以在手工通道時(shí)指定讀寫速度
RMAN> RUN {
2> ALLOCATE CHANNEL ch2 TYPE disk
3> BACKUP DATAFILE 1,2,4
4> FORMAT '/u01/app/oralce/rmanbak/users_%U.bak';} 下面的示例分配了多個(gè)通道,且對不同的數(shù)據(jù)文件使用不同的通道來完成備份工作
RMAN> RUN {
2> allocate channel ch2 device type disk;
3> allocate channel ch3 device type disk;
4> allocate channel ch4 device type disk;
5> backup
6> incremental level 0
7> (datafile 1,4 channel ch2)
8> (datafile 2,3 channel ch3)
9> (datafile 5,6 channel ch4);
10> alter system archive log current;}
ALLOCATE CHANNEL命令在目標(biāo)數(shù)據(jù)庫啟動一個(gè)服務(wù)器進(jìn)程,同時(shí)必須定義服務(wù)器進(jìn)程執(zhí)行備份或者恢復(fù)操作使用的I/O類型
實(shí)際上是通過channel來控制備份及恢復(fù)時(shí)的行為
4.通道配置選項(xiàng)
connect :是一個(gè)Oracle Net連接串。一般不適用于單實(shí)例環(huán)境
format : 為通道創(chuàng)建的備份片或映像副本確定路徑與文件名
duration: 控制作業(yè)的時(shí)間總量,以小時(shí)和分鐘進(jìn)行指定
maxopenfiles:該選項(xiàng)限制RMAN一次能夠打開的輸入文件數(shù),默認(rèn)為
maxpiecesize:限制一個(gè)備份集分割的備份片的大小,以字節(jié)(默認(rèn))、k、m、g為單位
parms:能夠被用于設(shè)置sbt_type通道所需的任何變量
filesperset:備份集中可容納的文件數(shù)
backup set: 是一個(gè)集合, 是由一個(gè)或多個(gè)物理文件組成, 是一個(gè)邏輯單位.
backup piece: 是真正的一個(gè)輸出文件, 受到操作系統(tǒng)單個(gè)文件的限制, 即 maxpiecesize 這個(gè)參數(shù).
連接 rman 測試:
rman target / nocatalog -- 使用操作系統(tǒng)權(quán)限登陸
rman target sys/oracle@trgt -- 遠(yuǎn)程方式登陸
show default device type; -- 查看默認(rèn)的備份介質(zhì), 默認(rèn)是 disk
configure default device type clear; -- 將備份介質(zhì)還原成默認(rèn)的disk.
補(bǔ)充: filesperset 參數(shù):
filesperset是每個(gè)備份集中包含的最大文件個(gè)數(shù), 和 channel 沒有關(guān)系.
allocate channel 提供備份并發(fā)度,若平均文件數(shù)<filesperset則會按照 平均文件數(shù)/備份集 進(jìn)行備份,若超過則按照filesperset的數(shù)量生成備份集;例如:
1、run {
allocate channel ch2 type disk;
allocate channel ch3 type disk;
backup datafile 3,4,5,6 filesperset 3;
release channel ch2;
release channel ch3;
}
平均數(shù)是 4(文件數(shù))/2(channel數(shù)) = 2 ,小于filesperset 3,則生成2個(gè)備份集,每個(gè)備份集包含2個(gè)數(shù)據(jù)文件
2、run {
allocate channel ch2 type disk;
allocate channel ch3 type disk;
backup datafile 3,4,5,6 filesperset 1;
release channel ch2;
release channel ch3;
}
則生成4個(gè)備份集,每個(gè)包含一個(gè)數(shù)據(jù)文件
由以上補(bǔ)充, 可知, 參數(shù) filesperset 不用指定就可以, 因?yàn)槟J(rèn)是用 (備份的文件數(shù)/chanel)得到的數(shù) 和 64 相比較. 只要比64 小, 就用前邊的數(shù), 貌似看來一般都會比 64 小
show 命令
直接 show all 就可以了
可以顯示出RMAN配置參數(shù)為:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO‘C:ORACLE..SNCFTEST.ORA’; #default
1.configure retention policy to redundancy 1: 是用來決定那些備份不再需要了,它一共有三種可選項(xiàng),分別是 CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; CONFIGURE RETENTION POLICY TO REDUNDANCY 5; CONFIGURE RETENTION POLICY TO NONE;
第一種recover window是保持所有足夠的備份,可以將數(shù)據(jù)庫系統(tǒng)恢復(fù)到最近七天內(nèi)的任意時(shí)刻。任何超過最近七天的數(shù)據(jù)庫備份將被標(biāo)記為obsolete。
第二種redundancy是為了保持可以恢復(fù)的最新的5份數(shù)據(jù)庫備份,任何超過最新5份的備份都將被標(biāo)記為redundancy。它的默認(rèn)值是1份。
第三種不需要保持策略,clear將恢復(fù)回默認(rèn)的保持策略。
一般最安全的方法是采用第二種保持策略。 可以設(shè)置這個(gè)值為 5
2.CONFIGURE BACKUP OPTIMIZATION OFF 默認(rèn)值為關(guān)閉,如果打開,rman將對備份的數(shù)據(jù)文件及歸檔等文件進(jìn)行一種優(yōu)化的算法。
3.Configure default device type to disk: 是指定所有I/O操作的設(shè)備類型是硬盤或者磁帶,默認(rèn)值是硬盤 磁帶的設(shè)置是CONFIGURE DEFAULT DEVICE TYPE TO SBT;
4.CONFIGURE CONTROLFILE AUTOBACKUP OFF 強(qiáng)制數(shù)據(jù)庫在備份文件或者執(zhí)行改變數(shù)據(jù)庫結(jié)構(gòu)的命令之后將控制文件自動備份,默認(rèn)值為關(guān)閉。這樣可以避免控制文件和catalog丟失后,控制文件仍然可以恢復(fù)。
5.CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F' 是配置控制文件的備份路徑和備份格式
6.CONFIGURE DEVICE TYPE DISK PARALLELISM 1; 是配置數(shù)據(jù)庫設(shè)備類型的并行度。
7.CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; 是配置數(shù)據(jù)庫的每次備份的copy數(shù)量,oracle的每一次備份都可以有多份完全相同的拷貝。
8.CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1 是設(shè)置數(shù)據(jù)庫的歸檔日志的存放設(shè)備類型
9.CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:ORACLE…SNCFTEST.ORA' 是配置控制文件的快照文件的存放路徑和文件名,這個(gè)快照文件是在備份期間產(chǎn)生的,用于控制文件的讀一致性。
10.CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:...%d_DB_%u_%s_%p'; 是配置備份文件的備份路徑和備份格式
CONFIGURE CHANNEL DISK CLEAR;用于清除上面的信道配置
CONFIGURE EXCLUDE FOR TABLESPACE <tablespace> [CLEAR];此命令用于將指定的表空間不備份到備份集中, 此命令對只讀表空間是非常有用的。 1.將備份文件存儲到指定路徑,如e:\backupb configure channel device type disk format 'e:\backupb\%d_db_%u'; 后面的%d_db_%u是存儲格式 2.我們也可以單獨(dú)指定control file存儲在另一個(gè)路徑:如e:\backupcontrol configure controlfile autobackup format for device type disk to 'e:\backupcontrol\%F'; 后面的%F是存儲格式
經(jīng)常使用的設(shè)置:
1) configure controlfile autobackup on; -- 默認(rèn)是 off
2) configure device type disk parallelism 2 backup type to backupset; -- 默認(rèn)是 1
3) 修改 控制文件保存的時(shí)間, 使用 nocatalog 方式, 修改參數(shù) control_file_record_keep_time, 默認(rèn)是 7 天, 可以修改 0~365 的任何值, 當(dāng)RMAN 采用nocatalog模式進(jìn)行備份時(shí),就會有一個(gè)問題。 當(dāng)我們使用catalog模式的時(shí)候,RMAN 備份的信息都會存放到catalog目錄里。 如果沒有使用catalog目錄,那么RMAN備份的信息就會保存到控制文件里。 RMAN 的這些備份信息對恢復(fù)來說非常重要,如果沒有這些信息,是無法使用RMAN 進(jìn)行恢復(fù)的。 所以,如果采用nocatalog模式,我們要主備備份控制文件,同時(shí),要將控制文件記錄的保存時(shí)間設(shè)置為不小于選中數(shù)據(jù)庫備份的周期,否則就可能在備份介質(zhì)上有數(shù)據(jù)庫備份,但是控制文件不存在與備份相關(guān)的備份記錄,在這種情況下,將無法恢復(fù)這些較早的文件。
alter system set control_file_record_keep_time = 20 scope=both;
要注意: 配置保存策略不會導(dǎo)致自動刪除備份,需要使用delete obsolete 命令才能刪除過期的備份集。 在report obsolete 命令時(shí)顯示到期的備份集。 如果列出的某個(gè)文件不能被刪除,需要魚腥crosscheck 命令,否則,Oracle 刪除delete obsolete命令輸出的所有項(xiàng)。如:
report obsolete;
delete noprompt obsolete;
crosscheck backup;
delete noprompt expired backup;
List 命令
列出備份集, 數(shù)據(jù)文件鏡像
列出指定表空間任意數(shù)據(jù)文件的備份集或鏡像副本
列出指定范圍內(nèi)包含歸檔日志的備份集或鏡像副本
list incarnation;
匯總查詢:--如果備份文件多的話多用這個(gè)list命令可以對備份文件有個(gè)總體了解。
list backup; 列出備份詳細(xì)信息
list backup by file;
說明:按照文件類型列出以下四種類型列表:
數(shù)據(jù)文件備份列表、已存檔的日志備份列表、控制文件備份列表、SPFILE 備份的列表
list backup of database summary;
list backup of tablespace users;
list backup of archivelog all; 查看已經(jīng)備份的 archive log 情況.
list archivelog all; 查看目前所有的 archivelog 文件. (可能包含已經(jīng)備份的, 除非你在備份時(shí)有參數(shù) delete input file 刪除了)
list backup verbose;
list backup of spfile;
list backup of controlfile;
list backup summary;
簡述可用的備份, TY: B代表備份, LV: F代表全備fullbackup, A表示 Archivelog, 0,1,2 表示備份級別, S表示狀態(tài), A表示available可用, X表示expried過期
備份列表
===============
關(guān)鍵字 TY LV S 設(shè)備類型 完成時(shí)間 段數(shù) 副本數(shù) 壓縮標(biāo)記
------- -- -- - ----------- ---------- ------- ------- ---------- ---
11 B F A DISK 02-7月 -13 1 1 NO TAG20130702T162726
12 B F A DISK 14-2月 -14 1 1 NO TAG20140214T140119
13 B F A DISK 14-2月 -14 1 1 NO TAG20140214T140119
14 B F A DISK 21-2月 -14 1 1 NO TAG20140221T125325
15 B F A DISK 21-2月 -14 1 1 NO TAG20140221T125325
16 B A A DISK 24-2月 -14 1 1 NO TAG20140224T125128
list backup of datafile 1 [n | <dir>];
list backup of archivelog from sequence 1000 until sequence 1020;
list backupset tag=TAG20140317T155753;
list expried backup; 列出過去的備份文件
Report命令
Report命令顯示存儲倉庫(Repository)中的詳細(xì)的分析信息
最常使用的是report obsolete; report schema;
例如, 那些文件需要備份, 那些備份可以被刪除, 那些文件不可恢復(fù) 等
report schema; 報(bào)告目標(biāo)數(shù)據(jù)庫的物理結(jié)構(gòu)
report need backup; 報(bào)告需要備份的數(shù)據(jù)文件(根據(jù)條件不同)
report need backup days 3; 最近三天沒有備份的數(shù)據(jù)文件(如果出問題的話,這些數(shù)據(jù)文件將需要最近3天的歸檔日志才能恢復(fù))
report need backup redundancy 3; 報(bào)告出冗余次數(shù)小于3的數(shù)據(jù)文件
report need backup recovery window of 3 days; 報(bào)告出恢復(fù)需要3天歸檔日志的數(shù)據(jù)文件
report obsolete; 報(bào)告已經(jīng)丟棄的備份(前提是設(shè)置了備份策略)
report unrecoverable; 報(bào)告當(dāng)前數(shù)據(jù)庫中不可恢復(fù)的數(shù)據(jù)文件(即沒有這個(gè)數(shù)據(jù)文件的備份、或者該數(shù)據(jù)文件的備份已經(jīng)過期)
report schema at time ‘sysdate – 7’;
report need backup days 2 tablespace system;
Delete 命令
刪除相關(guān)的備份集火鏡像副本的物理文件, 同時(shí)將刪除標(biāo)記 delete 更新到控制文件.
delete backupset;
delete backupset n;
delete obsolete; -- 刪除荒廢
delete noprompt obsolete; -- 不提示, 刪除荒廢
delete noprompt expired backup; -- 不提示, 刪除不在磁盤上的備份集(可以先用crosscheck同步確認(rèn)一下)
delete obsolete redundancy 2;
delete noprompt copy;
delete noprompt backupset tag TAG20140317T14432;
delete obsolete recovery window of 7 days;
delete expired backupset;
delete expired copy;
delete expired archivelog all;
Crosscheck 命令
用于檢驗(yàn)存儲倉庫中的備份集或鏡像副本, 執(zhí)行該命令后, 將更新倉儲倉庫中的剛剛檢驗(yàn)的對象狀態(tài), 便于后續(xù)操作處理.
在RMAN目錄和物理備份目的地不同步的情況下,我們可以使用crosscheck命令來效驗(yàn)控制文件或恢復(fù)目錄中的RMAN信息是否與備份介質(zhì)上的實(shí)際物理備份集片相同。
使用crosscheck 命令時(shí),我們關(guān)心每個(gè)備份集或者副本的狀態(tài)。 如果使用控制文件,用于備份集片的v$backup_set 視圖和用于副本的v$databfile_copy 視圖中的status列列出了每個(gè)備份集或副本的狀態(tài)碼;如果使用恢復(fù)目錄,則在備份集片的RC_BACKUP_SET和副本的RC_DATAFILE_COPY中列出了每個(gè)備份集或副本的狀態(tài)碼。 在不同的備份狀態(tài)碼中,我們關(guān)心以下兩種狀態(tài):
(1)A(Available:可用):RMAN 認(rèn)定該項(xiàng)存在于備份介質(zhì)上
(2)X(Expired:不可用):這個(gè)備份集片或副本上存儲的RMAN目錄(即控制文件或恢復(fù)目錄)中,但是并沒有物理存在于備份介質(zhì)上。
使用crosscheck 命令的目的是將RMAN目錄的狀態(tài)設(shè)置為AVAILABLE或者EXPIRED。 執(zhí)行crosscheck時(shí),RMAN檢查目錄中列出的每個(gè)備份集或副本并且判斷他們是否存在與備份介質(zhì)上。 如果備份集或副本不存在與備份介質(zhì)上,它就會被標(biāo)記為expired, 并且不能用于任何還原操作;如果備份集或副本存在與備份介質(zhì)上,它就會維持available狀態(tài)。 如果以前被標(biāo)記為expired 的備份集或副本再次存在于備份介質(zhì)上,crosscheck 命令就會將它標(biāo)記回available。
RMAN 備份檢驗(yàn)的幾種狀態(tài)
expired: 對象不存在于磁盤或磁帶。當(dāng)一個(gè)備份集處于expired狀態(tài),則該備份集中所有的備份片同樣處于expired狀態(tài)
available: 對象處于可用狀態(tài)。當(dāng)一個(gè)備份集可用,則該備份集內(nèi)的所有備份片同樣可用
unavailabe: 對象處于不可用狀態(tài)。當(dāng)一個(gè)備份集不可用,則該備份集內(nèi)的所有備份片同樣不可用
注:expired不等同于obsolette。
expired 與 obsolette 的區(qū)別:
對于EXPIRED狀態(tài)的產(chǎn)生,與crosscheck命令是密切相關(guān)的,RMAN通過crosscheck命令檢查備份是否存在于備份介質(zhì)上, 如果不存在,則狀態(tài)由AVAILABLE改為EXPIRED. 例如: 將備份控制文件的備份刪除,再使用crosscheck進(jìn)行檢查,該備份的狀態(tài)由AVAILABLE改為EXPIRED.
對于obsolete狀態(tài),是針對MAN備份保留策略來說的,超過了這個(gè)保留策略的備份,會被標(biāo)記為obsolete,但其狀態(tài)依舊為AVAILABLE,我們可以使用report obsolete來查看已廢棄的備份.
校驗(yàn)時(shí)的限制
目標(biāo)數(shù)據(jù)庫必須被啟動
對于磁盤上的備份集,校驗(yàn)時(shí)不需要使用通道。而磁帶上的備份集則必須使用通道,如果未為磁帶配置自動通道,則必須手動分配
可以校驗(yàn)執(zhí)行resetlogs之前的備份,即可以校驗(yàn)不同的incarnation
crosscheck backup;
RMAN> crosscheck backupset; --校驗(yàn)備份集
RMAN> crosscheck copy; --校驗(yàn)鏡像副本
RMAN> crosscheck backup of controlfile; --校驗(yàn)備份的控制文件
RMAN> crosscheck backup of archivelog all; --校驗(yàn)所有備份的歸檔日志
RMAN> crosscheck backup of datafile 1,2; --校驗(yàn)datafile 1,2
RMAN> crosscheck backup of tablespace sysaux,system; --校驗(yàn)表空間sysaux,system
RMAN> crosscheck backup completed between '13-OCT-10' and '23-OCT-10'; --校驗(yàn)時(shí)間段,時(shí)間段格式由NLS_DATE_FORMAT設(shè)置
RMAN> crosscheck backupset 1067,1068; --校驗(yàn)指定的備份集
backup 常用命令
1.設(shè)置備份標(biāo)記
backup database tag='full_bak1'; 注:每個(gè)標(biāo)記必須唯一,相同的標(biāo)記可以用于多個(gè)備份只還原最新的備份。
2.設(shè)置備份集大小(一次備份的所有結(jié)果為一個(gè)備份集,要注意備份集大小)
backup database maxsetsize=100m tag='datafile1';
注:maxsetsize限定備份集的大小。所以必須大于數(shù)據(jù)庫總數(shù)據(jù)文件的大小,否則會報(bào)錯(cuò)。
RMAN-06183: datafile or datafile copy larger than MAXSETSIZE: file# 1 /data/oradata/system01.dbf
3.設(shè)置備份片大小(磁帶或文件系統(tǒng)限制)
run {
allocate channel c1 type disk maxpicecsize 100m format '/data/backup/full_0_%U_%T';
backup database tag='full_0';
release channel c1;
}
可以在allocate子句中設(shè)定每個(gè)備份片的大小,以達(dá)到磁帶或系統(tǒng)限制。
也可以在configure中設(shè)置備份片大小。
Configure channel device type disk maxpiecesize 100 m;
configure channel device type disk clear;
4.備份集的保存策略
backup database keep forever; --永久保留備份文件, 這種需要有恢復(fù)目錄的支持
backup database keep until time='sysdate+30'; --保存?zhèn)浞?0天
5.重寫configure exclude命令
backup databas noexclude keep forever tag='test backup';
6.檢查數(shù)據(jù)庫錯(cuò)誤
backup validate database; 使用 rman 掃描數(shù)據(jù)庫的物理和邏輯錯(cuò)誤, 但是并不真正執(zhí)行備份操作.
使用RMAN來掃描數(shù)據(jù)庫的物理/邏輯錯(cuò)誤,并不執(zhí)行實(shí)際備份。
7.跳過脫機(jī),不可存取或只讀文件
backup database skip readonly;
backup database skip offline;
backup database skip inaccessible;
backup database ship readonly skip offline ship inaccessible;
8.強(qiáng)制備份
backup database force;
9.基于上次備份時(shí)間備份數(shù)據(jù)文件
1>只備份添加的新數(shù)據(jù)文件
backup database not backed up;
2>備份"在限定時(shí)間周期內(nèi)"沒有被備份的數(shù)據(jù)文件
backup database not backed up since time='sysdate-2';
10.備份操作期間檢查邏輯錯(cuò)誤
backup check logical database;
backup validate check logical database;
11.生成備份副本
backup database copies=2;
12.備份控制文件
backup database device type disk includ current controlfile;
control_file_record_keep_time : 指定控制文件內(nèi)RMAN信息被覆蓋前保留的最小天數(shù)
db_recovery_file_dest : 如果將 RMAN 備份到此處, 需要設(shè)置該參數(shù)
db_recovery_file_dest_size: 如果將 RMAN 備份到此處, 需要設(shè)置該參數(shù)
環(huán)境變量參數(shù)
nls_date_format : 設(shè)定日期
nls_lang: 設(shè)定環(huán)境變量影響 restore, recover, report 等命令
使用FORMAT參數(shù)時(shí)可使用的各種替換變量,如下(注意大小寫)所示:
%a:Oracle數(shù)據(jù)庫的activation ID即RESETLOG_ID。
%c:備份片段的復(fù)制數(shù)(從1開始編號,最大不超過256)。
%d:Oracle數(shù)據(jù)庫名稱。
%D:當(dāng)前時(shí)間中的日,格式為DD。
%e:歸檔序號。
%f:絕對文件編號。
%F:基于"DBID+時(shí)間"確定的唯一名稱,格式的形式為c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 為該數(shù)據(jù)庫的DBID,YYYYMMDD為日期,QQ是一個(gè)1~256的序列。
%h:歸檔日志線程號。
%I:Oracle數(shù)據(jù)庫的DBID。
%M:當(dāng)前時(shí)間中的月,格式為MM。
%N:表空間名稱。
%n:數(shù)據(jù)庫名稱,并且會在右側(cè)用x字符進(jìn)行填充,使其保持長度為8。比如數(shù)據(jù)庫名JSSBOOK,則生成的名稱則是JSSBOOKx。
%p:備份集中備份片段的編號,從1開始。
%s:備份集號。
%t:備份集時(shí)間戳。
%T:當(dāng)前時(shí)間的年月日格式(YYYYMMDD)。
%u:是一個(gè)由備份集編號和建立時(shí)間壓縮后組成的8字符名稱。利用%u可以為每個(gè)備份集生成一個(gè)唯一的名稱。
%U:默認(rèn)是%u_%p_%c的簡寫形式,利用它可以為每一個(gè)備份片段(即磁盤文件)生成一個(gè)唯一名稱,這是最常用的命名方式,執(zhí)行不同備份操作時(shí),生成的規(guī)則也不同,如下所示:
生成備份片段時(shí),%U=%u_%p_%c;
生成數(shù)據(jù)文件鏡像復(fù)制時(shí),%U=data-D-%d_id-%I_TS-%N_FNO-%f_%u;
生成歸檔文件鏡像復(fù)制時(shí),%U=arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u;
生成控制文件鏡像復(fù)制時(shí),%U=cf-D_%d-id-%I_%u。
%Y:當(dāng)前時(shí)間中的年,格式為YYYY。
注:如果在BACKUP命令中沒有指定FORMAT選項(xiàng),則RMAN默認(rèn)使用%U為備份片段命名。
1) 設(shè)置 auto backup control file, CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'
2) 將 redundancy 設(shè)置為 5, CONFIGURE RETENTION POLICY TO REDUNDANCY 5; 或 CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
3) parallelism 設(shè)置為 2, 但是貌似這個(gè)必須是 企業(yè)版的 oracle 才可以 CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;
個(gè)人喜歡的備份格式:
全備: full_%d_%U
datafile : df_%d_%U
tablespace :tb_%d_%U
感謝各位的閱讀,以上就是“怎么掌握RMAN組成、配置、檢測”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么掌握RMAN組成、配置、檢測這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。