Oracle9i RMAN 的優缺點及RMAN 備份及恢復步驟
參考:https://blog.csdn.net/shudaqi2010/article/details/75300437
一. RMAN 備份的一些優點
和OS命令備份方式相比,使用RMAN的優點
1 備份執行期間不需要人工干預,因此減少了誤操作的機會;
2 可以有效的將備份和恢復結合起來;
3 支援除邏輯備份以外的所有備份型別,包括完全備份,增量備份,表空間備份,資料檔案備份,控制檔案備份以及歸檔日誌檔案備份;
4 可以識別corrupted block;
5 方便的實現定期(定時)備份;
6 自動生成備份日誌;
7 Rman的備份教本和OS無關,方便移植;
8 強大的報表功能可以方便的獲悉備份的可用性
9 控制檔案自動備份
10 skip inaccessible語句存在RMAN命令中,是指RMAN按順序備份資料檔案和歸檔日誌時,如果缺少中間的一個或發生了IO問題,可以跳過去繼續備份的,弊大與利的,如果你的備份會報錯,不能保證你的備份集是可恢復的。
11 system表空間會連帶controlfile的備份
其中
a、控制檔案自動備份是每次如下情況rman會自動備份controlfile
1、每次rman發出backup或是copy命令
2、run batch中包含backup或是copy命令
3、源資料加structure發改變,比如加資料檔案、加表空間等
controlfile的autobackup是絕對要開啟的,相當有用的9i的一個new feature你只需要安心的備份就要可以了,controlfile rman自動就給你備了。
b、system表空間會連帶controlfile的備份:
1、如果controlfile損壞了呢,autobackup就為你恢復這種情況下rman的catalog提供了一個很好的“稻草”。
2、autobackup自動備的不光是controlfile,還會備份當前的spfile。
3、對於備份來說是不怕冗餘的,而且特別是controlfile佔不了多少K的情況下。
和OS命令備份方式相比,使用RMAN的缺點
1 備份過程不透明;
2 Rman備份的資料只有使用Rman才能恢復;
3 如果管理網路上的多個資料庫,通常會使用一個單獨的資料庫來作為Rman恢復目錄,如果這個資料庫出現故障,那麼所作的所有資料庫備份也都不能使用,除非恢復這個資料庫。那麼為了保證這個用於存放Rman恢復目錄的資料庫出現故障,通常還要對這個資料庫使用OS命令備份。
4 如果有一個資料庫需要備份,那麼備份資訊會紀錄在控制檔案中,所以控制檔案不許多處備份,不能丟失。
5 Rman備份不能備份REDO LOG FILES,引數檔案(init.ora),口令檔案,作業系統檔案,以及OFFLINE的檔案。
注意:RMAN不能用於備份初始化引數檔案和口令檔案。學習有點費時。
二. Oracle9i RMAN 備份及恢復步驟
在這裡沒有討論多麼深入的RMAN技術,也沒有告訴大家這樣去編寫備份指令碼,這並不是我的初衷,我只想把我會的寫出來,和大家一起學習,一起進步,謝謝。
1、切換伺服器歸檔模式,如果已經是歸檔模式可跳過此步:
%sqlplus /nolog (啟動sqlplus)
SQL> conn / as sysdba (以DBA身份連線資料庫)
SQL> shutdown immediate; (立即關閉資料庫)
SQL> startup mount (啟動例項並載入資料庫,但不開啟)
SQL> alter database archivelog; (更改資料庫為歸檔模式)
SQL> alter database open; (開啟資料庫)
SQL> alter system archive log start; (啟用自動歸檔)
SQL> exit (退出)
2、連線:
%rman target=rman/rman@mydb (啟動恢復管理器)
3、基本設定:
RMAN> configure default device type to disk; (設定預設的備份裝置為磁碟)
RMAN> configure device type disk parallelism 2; (設定備份的並行級別,通道數)
RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U'; (設定備份的檔案格式,只適用於磁碟裝置)
RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U'; (設定備份的檔案格式,只適用於磁碟裝置)
RMAN> configure controlfile autobackup on; (開啟控制檔案與伺服器引數檔案的自動備份)
RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F'; (設定控制檔案與伺服器引數檔案自動備份的檔案格式)
4、檢視所有設定:
RMAN> show all
5、檢視資料庫方案報表:
RMAN> report schema;
6、備份全庫:
RMAN> backup database plus archivelog delete input; (備份全庫及控制檔案、伺服器引數檔案與所有歸檔的重做日誌,並刪除舊的歸檔日誌)
7、備份表空間:
RMAN> backup tablespace system plus archivelog delete input; (備份指定表空間及歸檔的重做日誌,並刪除舊的歸檔日誌)
8、備份歸檔日誌:
RMAN> backup archivelog all delete input;
9、複製資料檔案:
RMAN> copy datafile 1 to '/oracle/dbs/system.copy';
10、檢視備份和檔案複本:
RMAN> list backup;
11、驗證備份:
RMAN> validate backupset 3;
12、從自動備份中恢復伺服器引數檔案:
RMAN> shutdown immediate; (立即關閉資料庫)
RMAN> startup nomount; (啟動例項)
RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (從自動備份中恢復伺服器引數檔案)
13、從自動備份中恢復控制檔案:
RMAN> shutdown immediate; (立即關閉資料庫)
RMAN> startup nomount; (啟動例項)
RMAN> restore controlfile to '/backup1' from autobackup; (從自動備份中恢復控制檔案)
13、恢復和復原全資料庫:
RMAN> shutdown immediate; (立即關閉資料庫)
RMAN> exit (退出)
%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (將資料檔案重新命名)
%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (將資料檔案重新命名)
%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (將資料檔案重新命名)
%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (將資料檔案重新命名)
%rman target=rman/rman@mydb (啟動恢復管理器)
RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化引數檔案啟動資料庫)
RMAN> restore database; (還原資料庫)
RMAN> recover database; (恢復資料庫)
RMAN> alter database open; (開啟資料庫)
14、恢復和復原表空間:
RMAN> sql 'alter tablespace users offline immediate'; (將表空間離線)
RMAN> exit (退出恢復管理器)
%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (將表空間重新命名)
%rman target=rman/rman@mydb (啟動恢復管理器)
RMAN> restore tablespace users; (還原表空間)
RMAN> recover tablespace users; (恢復表空間)
RMAN> sql 'alter tablespace users online'; (將表空間聯機)
15、增量備份與恢復:
第一天的增量基本備份:
RMAN> backup incremental level=0 database plus archivelog delete input;
第二天的增量差異備份:
RMAN> backup incremental level=2 database plus archivelog delete input;
第三天的增量差異備份:
RMAN> backup incremental level=2 database plus archivelog delete input;
第四天的增量差異備份:
RMAN> backup incremental level=1 database plus archivelog delete input;
第五天的增量差異備份:
RMAN> backup incremental level=2 database plus archivelog delete input;
第六天的增量差異備份:
RMAN> backup incremental level=2 database plus archivelog delete input;
第七天的增量差異備份:
RMAN> backup incremental level=0 database plus archivelog delete input;
增量恢復:
RMAN> shutdown immediate;
RMAN> exit
%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak
%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak
%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak
%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak
%rman target=rman/rman@mydb
RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora
RMAN> restore database;
RMAN> recover database;
RMAN> alter database open;
相關文章
- Oracle9i RMAN備份及恢復步驟Oracle
- Oracle9i RMAN備份及恢復步驟(zt)Oracle
- Linux下Oracle9i RMAN備份及恢復步驟(轉)LinuxOracle
- oracle 10g RMAN備份及恢復Oracle 10g
- RMAN備份恢復效能優化優化
- rman備份恢復-rman入門
- RMAN備份及恢復歸檔日誌的語法
- RMAN備份恢復原理
- Oracle中使用RMAN備份及一些恢復方法Oracle
- RMAN說,我能備份(12)--RMAN中的恢復目錄和備份優化優化
- oracle rman備份恢復的例子Oracle
- rman備份恢復-rman恢復資料檔案測試
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- RMAN備份與恢復之加密備份加密
- 執行RMAN表空間及時點恢復——使用者管理備份和恢復手冊
- RMAN備份恢復——備份到帶庫的效能
- rman備份恢復命令之switch
- RMAN備份恢復整個庫
- oracle RMAN 備份恢復總結Oracle
- oracle RMAN 備份恢復總結Oracle
- Oracle的RMAN備份恢復繼續,RMAN部分引數Oracle
- 【RMAN】RMAN備份恢復3 RMAN增量備份指令碼與crontab計劃任務指令碼
- RMAN備份恢復之控制檔案的恢復(三)
- RMAN備份恢復之控制檔案的恢復(二)
- RMAN備份恢復之控制檔案的恢復(一)
- ORACLE RMAN備份及還原Oracle
- RMAN備份恢復——備份到帶庫的效能(二)
- RMAN備份、恢復實驗室 之 備份篇 【rman: can't open target】
- 【RMAN】RMAN備份恢復1 RMAN冷備指令碼與crontab計劃任務指令碼
- 【RMAN】RMAN備份恢復2 RMAN熱備指令碼與crontab計劃任務指令碼
- ORACLE DG從庫 Rman備份恢復Oracle
- RMAN 備份與恢復深入解析(二)
- RMAN 備份與恢復深入解析(一)
- 【轉】 RMAN備份與恢復實踐
- RMAN備份恢復測試指令碼指令碼
- oracle rman備份及策略設定Oracle
- RMAN備份恢復——備份集儲存位置改變
- 12 使用RMAN備份和恢復檔案