溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

RMAN命令詳解

發(fā)布時(shí)間:2021-09-01 16:26:20 來(lái)源:億速云 閱讀:206 作者:chen 欄目:關(guān)系型數(shù)據(jù)庫(kù)

這篇文章主要講解了“RMAN命令詳解”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“RMAN命令詳解”吧!

1 列出對(duì)應(yīng)物 
RMAN>list incarnation;
  
2 列出備份
  
 2.1概述可用的備份    RMAN>list backup summary;
               B 表示 backup
               F 表示 FULL
               A 表示 archive log
               0 1 表示 incremental backup
               S 說(shuō)明備份狀態(tài) (A AVAILABLE   X EXPIRED )
  
  2.2按備份類(lèi)型列出備份  RMAN>list backup by file;
               按照 數(shù)據(jù)文件備份,歸檔日志備份,控制文件備份,服務(wù)器參數(shù)文件備份 列出
  
  2.3列出詳細(xì)備份     RMAN>list backup;
  
  2.4列出過(guò)期備份     RMAN>list expired backup;
  
  2.5列出表空間和數(shù)據(jù)文件備份
              list backup of tablespace 和list backup of datafile 輸出和list backup 相似
               如:list backup of tablespace user_tbs;
                 list backup of datafile 3;
  
  2.6列出歸檔日志備份   RMAN>list archivelog all;      簡(jiǎn)要信息
    RMAN>list backup of archivelog all; 詳細(xì)信息
  
  2.7列出控制文件和服務(wù)器參數(shù)文件
               RMAN>list backup of controlfile;
               RMAN>list backup of spfile;
  
  =====================================================
  =====================================================
  RMAN 的 report命令
  
  1. 報(bào)告最近沒(méi)有被備份的數(shù)據(jù)文件
    RMAN>report need backup days=3;
   
  2. 報(bào)告?zhèn)浞萑哂嗷蚧謴?fù)窗口
    RMAN>report need backup redundancy=2;
    RMAN>report need backup recovery window of 2 days;
   
  3. 報(bào)告數(shù)據(jù)文件的不可恢復(fù)操作
    RMAN>report unrecoverable;
  
  4. 報(bào)告數(shù)據(jù)庫(kù)模式
    RMAN>report schema;
   
  5. 報(bào)告丟棄的備份
    如果使用了保存策略,備份會(huì)標(biāo)記為丟棄狀態(tài)  RMAN>report obsolete; 刪除丟棄狀態(tài)備份RMAN>delete obsolete;
  
  =====================================================
  =====================================================
  RMAN的crosscheck 命令
  
  1 備份集有兩種狀態(tài)A(Available,RMAN認(rèn)為該項(xiàng)存在于備份介質(zhì)上)X(Expired,備份存在于控制文件或恢復(fù)目錄中,但是并沒(méi)有物理存在于備份介質(zhì)上)
   
   2 crosscheck 的目的是檢查RMAN 的目錄以及物理文件,如果物理文件不存在于介質(zhì)上,將標(biāo)記為Expired。如果物理文件存在,將維持Available。如果原先標(biāo)記為Expired 的備份集再次存在于備份介質(zhì)上(如恢復(fù)了損壞的磁盤(pán)驅(qū)動(dòng)器后),crosscheck將把狀態(tài)重新從Expired標(biāo)記回Available。
  
   3 crosscheck 輸出分兩部分。第一部分列出確定存在于備份介質(zhì)上的所有備份集片,第二部分列出不存在于備份介質(zhì)上的備份集片,并將其標(biāo)記為Expired。當(dāng)設(shè)置備份保 存策略后,一個(gè)備份過(guò)期,crosscheck之后標(biāo)記為丟棄的備份狀態(tài)依舊為availabel,要?jiǎng)h除丟棄備份delete obsolete。
  
  4 示例:
   crosscheck backup
   crosscheck backup of datafile 1;
   crosscheck backup of tablespace users;
   crosscheck backup of controfile;
   crosscheck backup of controlfile;
   crosscheck backup tag='SAT_BACKUP';
   crosscheck backup completed after 'sysdate - 2'
   crosscheck backup completed between 'sysdate - 5' and 'sysdate -2 '
   crosscheck backup device type sbt;
   crosscheck archivelog all;
   crosscheck archivelog like '%ARC00012.001'
   crosscheck archivelog from sequence 12;
   crosscheck archivelog until sequence 522;
  
  =====================================================
  =====================================================
  RMAN 的validate 命令
  
  1 validate 命令驗(yàn)證備份集片是否能夠被還原
  
  2 list backup summary; 得到了備份集得主鍵ID如40,然后validate backupset 40;
  =====================================================
  =====================================================
  RMAN 的備份保存策略以及change ,delete命令
  
  0.帶delete參數(shù)的change 命令刪除備份集,從備份介質(zhì),并且從控制文件和恢復(fù)目錄中刪除。
   change backupset 117,118 delete;
   change backuppiece 1304 delete;
   change archivelog until logseq =544 delete;
  
  1.兩類(lèi)策略:恢復(fù)窗口備份保存策略(recovery windows backup retension policy) 基于時(shí)間
        備份冗余備份保存策略(backup redundancy backup retension policy) 基于備份的數(shù)量
  
   兩類(lèi)策略互相排斥
   
  2.即使使用了備份保存策略,備份到期并不刪除,只是在RMAN目錄中標(biāo)記為丟棄,看到的狀態(tài)依舊為available;
   要查看標(biāo)記為丟棄的備份 report obsolete,只有使用delete obsolete才真正物理刪除。
  
  3.configure retension policy to recovery window of 7 days;
   configure retension policy to redundancy 3;
   顯示結(jié)果 show all;
   
  4.查看到期丟棄的備份時(shí),可能需要手工保存一些備份 ,可以使用change 命令帶keep 參數(shù),使用這個(gè)命令后,那些被修改的備份將被認(rèn)為是個(gè)long-term backup,不在受保存策略影響也就是說(shuō)delete obsolete 也不刪除。
  
  5.要使備份時(shí)候不受保存策略影響 ,使用帶keep參數(shù)的backup 命令
   backup database keep forever;
   backup database keep 5 days;
  
  6.change 命令功能
  
    可以修改備份為永久保存并將以及該備份的相關(guān)的日志保存下來(lái),保證總能將備份恢復(fù)到當(dāng)前時(shí)間點(diǎn)
    change backupset 31 keep forever logs;
    可以設(shè)置備份丟棄的新日期 ,將備份在多保存7 天,7 天后將刪除
    change backupset 32 keep until time 'sysdata + 7' logs;
  
  7.change 可以將備份集設(shè)置為unavailable
    change backupset 33 unavailable;
    標(biāo)記為unavailable狀態(tài)的備份集并不參與crosscheck;
  =====================================================
  =====================================================
  恢復(fù)目錄的記錄刪除
  
  1. $ORACLE_HOME/rdbms/admin/prgrmanc.sql 腳本定期刪除恢復(fù)目錄中具有DELETED狀態(tài)的記錄
  
  2. 要?jiǎng)h除舊的對(duì)應(yīng)物記錄incarnation.必須從DBINC 表中刪除這些對(duì)應(yīng)物,使用RC_DATABASE_INCARNATION 視圖來(lái)確定要?jiǎng)h除的對(duì)應(yīng)物。記錄要?jiǎng)h除的每個(gè)對(duì)應(yīng)物的DBINC_KEY
    隨后啟動(dòng)SQL*Plus,執(zhí)行delete from dbinc where dbinc_key=2;
  =====================================================
  =====================================================
  手工同步恢復(fù)目錄
  
  resync catalog;
  
  Oracle同步恢復(fù)目錄的時(shí)候,首先創(chuàng)建快照控制文件,然后比較這個(gè)文件和恢復(fù)目錄,完成后,Oracle 更新恢復(fù)目錄,使恢復(fù)目錄和控制文件同步
  =====================================================
  =====================================================
  在RMAN 中存儲(chǔ)腳本
  
  1,連接到目標(biāo)數(shù)據(jù)庫(kù)和恢復(fù)目錄
    rman target / catalog rman/rman@rman9i
   
  2,創(chuàng)建腳本
    RMAN>create script my_bk_script
    2>{backup database plus archivelog;}
     create script my_bk_script
    
  3,打印腳本
   RMAN>print script my_bk_script;
   printing stored scipt:my_bk_script
   {backup database plus archivelog;}
   
  4,運(yùn)行這個(gè)腳本,備份目標(biāo)數(shù)據(jù)庫(kù)
   RMAN>run {execute scipt my_bk_script;}
   
  5 刪除腳本
   RMAN>delete script my_bk_script;
  =====================================================
  =====================================================
  archivelog模式下的完全恢復(fù)
  
  step1:set oracle_sid=recover
      rman target rman_backup/password
      configure controlfile autobackup on;
      
  step2:backup database plus archivelog delete input;
  
  step3:shutdown immediate;
  
  step4:重命名所有的數(shù)據(jù)文件和控制文件,不重命名聯(lián)機(jī)重做日志。
  
  step5: startup nomount;
      set DBID=****
      restore controlfile from autobackup;
      alter database mount;
     
  step6: restore database;
      recover database;
      alter database open resetlogs;
  
  表空間恢復(fù)
  
  sql"alter tablespace users offline";
  sql"alter tablespace tools offline";
  restore tablespace users,tools;
  recover tablespace users,tools;
  sql"alter tablespace users online";
  sql"alter tablespace tools online";
  
  數(shù)據(jù)文件恢復(fù)
  
  sql"alter database datafile 3 offline";
  sql"alter database datafile 'd:oracleoradatausers01.dbf' offline";
  restore datafile 3
  restore datafile 'd:oracleoradatausers01.dbf';
  recover datafile 3
  recover datafile 'd:oracleoradatausers01.dbf';
  sql"alter database datafile 3 online";
  sql"alter database datafile 'd:oracleoradatausers01.dbf'online";
  
  =====================================================
  =====================================================
  切換當(dāng)前的incarnation 回到resetlogs 前RESET DATABASE TO INCARNATION inc_key
  
  =====================================================
  =====================================================
  
  RMAN 高級(jí)恢復(fù)
  
  1 基于時(shí)間點(diǎn)的恢復(fù)
  run
  {
  set until time "to_date('07/01/02 15:00:00','mm/dd/yy hh34:mi:ss')"'
  restore database;
  recover database;
  alter database open resetlogs;
  }
  
  2 基于SCN 的恢復(fù)
  startup mount;
  restore database UNTIL SCN 10000;
  recover database UNTIL SCN 10000;
  alter database open resetlogs;
  
  3 基于日志序列的恢復(fù)
  startup mount;
  restore database UNTIL SEQUENCE 100 thread 1;
  recover database UNTIL SEQUENCE 100 thread 1;
  alter database open resetlogs;  

感謝各位的閱讀,以上就是“RMAN命令詳解”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)RMAN命令詳解這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI