oracle RMAN 備份恢復總結
http://space.itpub.net/8334342/viewspace-521142
Recovery Manager(RMAN)是一種用於(backup)、還原(restore)和恢復(recover)的 工.RMAN只能用於ORACLE8或更高的版本中。它能夠備份整個資料庫或資料庫部件,如表空間、資料檔案、控制檔案、歸檔檔案以及Spfile引數檔案。RMAN也允許您進行增量資料塊級別的備份,增量RMAN備份是時間和空間有效的,因為他們只備份自上次備份以來有變化的那些資料塊。而且,透過RMAN提供的介面,第三方的備份與恢復軟體如veritas將提供更強大的備份與恢復的功能。
透過RMAN,也提供了其它更多功能,如資料庫的克隆、採用RMAN建立備用資料庫、
利用RMAN備份與移動裸裝置(RAW)上的檔案等工作將變得更方便簡單。9i的RMAN透過
增強的自動配置與管理功能,以及特有的塊級別的恢復,將使備份與恢復工作變得更加快捷
與完美。9i的RMAN有如下特徵特性:
·自動的備份與恢復
·方便的備份歸檔日誌
·自動檢測新的資料檔案
·支援增量備份
·最大限度的減少備份與恢復的錯誤
·減少恢復的時間
·在熱備份中不會產生額外的redo日誌
·腐爛資料塊的自動檢測·並行的備份與恢復操作
·線上備份時,表空間不用置於備份模式
可以看到,在以上的一些特性中,顯示了RMAN強大的功能與好處,以上功能的實現,
是因為RMAN是塊級別的備份與恢復,備份與恢復發生在資料庫塊級別,可以透過比較資料
塊而獲得一致性的資料塊,可以避免備份沒有用過的塊,可以檢驗塊是否腐爛等塊級別的問
題。
在使用rman備份分為使用恢復目錄和不使用恢復目錄兩種形式,如果使用恢復目錄,那恢復目
設定自動備份控制檔案格式configure controlfile autobackup format for device type disk
設定備份最佳化configure backup optimization on;
自動備份控制檔案預設儲存路徑/opt/ora9/product/9.2.0.4/dbs/
連連線資料庫
rman>connect target / 或 rman target /
RMAN> run {
2> allocate channel dev1 type disk;
3> backup
4> format '/tmp/hotbak/bak'
5> database;
6> release channel dev1;
7> }
2> allocate channel dev1 type disk;
3> backup
4> format '/tmp/hotbak/tablespace_users'
5> tablespace users;
6> release channel dev1;
7> }
備份單獨資料檔案
2> allocate channel dev1 type disk;
3> backup
4> format '/tmp/hotbak/datafile_users'
5> datafile '/opt/ora9/oradata/oradb/users01.dbf';
6> release channel dev1;
7> }
備份控制檔案
2> allocate channel dev1 type disk;
3> backup
4> format '/tmp/hotbak/controlfile'
5> (current controlfile);
6> release channel dev1;
7> }
Datafile recovery 資料檔案恢復
RMAN> run {
2> allocate channel dev1 type disk;
3> "alter tablespace users offline immediate";
4> restore datafile 4;
5> recover datafile 4;
6> sql "alter tablespace users online";
7> release channel dev1;
8> }
rman>startup nomount;
rman>set dbid=2347671489
rman>restore controlfile from autobackup 或 rman>restore controlfile from
恢復資料庫
RMAN> restore database;
RMAN> recover database;
RMAN>alter database open resetlogs;
恢復完畢。
上面從恢復控制檔案開始,講述的是,只要你有資料庫的備份檔案和備份時控制檔案,才可以
list backup 檢視備份資訊
List backup summary 檢視備份彙總資訊
List backup of datafile ‘file name’
list incarnation of database; 檢視具體的備份資訊
檢查磁碟或磁帶上的備份或複製是否正確,並更新備份或者複製的狀態
Crosscheck backup;
Crosscheck archivelog all;
Delete [noprompt] expired backup命令刪除過期備份
也可以用List來檢視相應的報告
LIST EXPIRED BACKUP;
LIST EXPIRED BACKUP SUMMARY;
Delete命令可以用來刪除指定的備份或者用來刪除廢棄或者是過期的備份集
如刪除指定的備份集與備份片
RMAN> DELETE BACKUPPIECE 101;
RMAN> DELETE CONTROLFILECOPY '/tmp/control01.ctl';
RMAN> DELETE BACKUP OF TABLESPACE users DEVICE TYPE sbt;
刪除過期或者廢棄了的備份
RMAN> DELETE EXPIRED BACKUP;
RMAN> DELETE NOPROMPT OBSOLETE;
RMAN> DELETE OBSOLETE REDUNDANCY = 3;
RMAN> DELETE OBSOLETE RECOVERY WINDOW OF 7 DAYS;
刪除指定的備份歸檔
RMAN> DELETE NOPROMPT ARCHIVELOG UNTIL SEQUENCE = 300;
#!/bin/sh
date=`date +%Y%m%d`
export ORACLE_HOME=/opt/ora9/product/9.2.0.4
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin
export ORACLE_OWNER=oracle
export ORACLE_SID=oradb
export ORACLE_TERM=xterm
export LD_ASSUME_KERNEL=2.4.19
export THREADS_FLAG=native
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
backup
tag 'dbfull'
format '/tmp/dbfull%u_%s_%p_%T'
database;
}
exit;
EOF
rm /opt/arch/* -rf
增量備份的好處是減小備份檔案大小,但同樣也增加恢復時的時間和複雜度,我更加適合資料量
0級備份指令碼
#!/bin/sh
date=`date +%Y%m%d`
export ORACLE_HOME=/opt/ora9/product/9.2.0.4
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin
export ORACLE_OWNER=oracle
export ORACLE_SID=oradb
export ORACLE_TERM=xterm
export LD_ASSUME_KERNEL=2.4.19
export THREADS_FLAG=native
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
backup
incremental level 0
tag 'db0'
format '/tmp/db0%u_%s_%p_%T'
database;
#plus archivelog
#delete all input;
}
exit;
EOF
1級備份
date=`date +%Y%m%d`
export ORACLE_HOME=/opt/ora9/product/9.2.0.4
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin
export ORACLE_OWNER=oracle
export ORACLE_SID=oradb
export ORACLE_TERM=xterm
export LD_ASSUME_KERNEL=2.4.19
export THREADS_FLAG=native
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
backup
incremental level 1
tag 'db1'
format '/tmp/db1%u_%s_%p_%T'
database;
#plus archivelog
#delete all input;
}
exit;
EOF
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-765421/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle RMAN 備份恢復總結Oracle
- [記錄]oracle RMAN 備份恢復總結Oracle
- RMAN備份異機恢復流程總結
- Oracle的RMAN備份恢復,先從進入RMAN開始總結Oracle
- Oracle備份與恢復總結[轉]Oracle
- oracle rman備份恢復的例子Oracle
- ORACLE DG從庫 Rman備份恢復Oracle
- RMAN備份恢復原理
- rman備份恢復-rman入門
- Oracle 備份恢復篇之RMAN catalogOracle
- oracle 10g RMAN備份及恢復Oracle 10g
- Oracle塊損壞恢復(有rman備份)Oracle
- 備份恢復總結(一則)
- RMAN備份與恢復之加密備份加密
- Oracle的RMAN備份恢復繼續,RMAN部分引數Oracle
- Oracle DG從庫 Rman備份恢復測試Oracle
- 【RMAN】Oracle11g備份恢復新特性Oracle
- Oracle資料庫備份與恢復之RMANOracle資料庫
- oracle實驗記錄 (恢復-rman增量備份)Oracle
- oracle rman備份驗證和備份/恢復進度監控Oracle
- rman備份恢復-rman恢復資料檔案測試
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- RMAN備份恢復效能優化優化
- rman備份恢復命令之switch
- RMAN備份恢復整個庫
- Oracle備份恢復之熱備份恢復及異機恢復Oracle
- 楊廷琨大師總結:RMAN備份恢復--RAC環境資料庫的備份資料庫
- oracle 10.2.0.1 win 32 rman 備份異機恢復Oracle
- Oracle9i RMAN備份及恢復步驟Oracle
- RMAN備份恢復——備份到帶庫的效能
- 循序漸進oracle第7章:備份與恢復之RMAN的簡單備份與恢復Oracle
- controlfile備份恢復總結(轉)
- 【RMAN】Oracle12c以後rman 備份恢復命令參考Oracle
- Oracle 11G 備份與恢復 使用RMAN建立備份集舉例Oracle
- Oracle 備份恢復概念Oracle
- oracle備份恢復PPTOracle
- Oracle 備份和恢復Oracle
- ORACLE備份&恢復案例Oracle