Oracle RMAN快速入門指南
正在看的ORACLE教程是:Oracle RMAN快速入門指南。
前言:
這篇文章主要介紹RMAN的常用方法,其中包含了作者一些自己的經驗,里面的實驗也基本全在WIN 2K和ORACLE 8.1.6環境下測試成功(因為這個環境比較容易實現)。
本文借鑒了網上一些高手的相關文章,希望大俠們不要見怪,此處一并謝過。
這篇文章主要是在北京出差期間寫的,回到家后整理修改了一下,時間比較倉促,同時因為篇幅有限,一些技術細節不能一一覆蓋了,只希望能夠幫助新手入門的作用,想真正熟練掌握RMAN,必須經過較長時間的實踐磨練才可以,尤其需要在工程中獲得寶貴的故障解決經驗。
1.什么是RMAN?
RMAN可以用來備份和還原數據庫文件、歸檔日志和控制文件。它也可以用來執行完全或不完全的數據庫恢復。
注意:RMAN不能用于備份初始化參數文件和口令文件。
RMAN啟動數據庫上的Oracle服務器進程來進行備份或還原。備份、還原、恢復是由這些進程驅動的。
RMAN可以由OEM的Backup Manager GUI來控制,但在本文章里不作重點討論。
2. Terminology 專業詞匯解釋
2.1. Backup sets 備份集合
備份集合有下面的特性:
包括一個或多個數據文件或歸檔日志
以oracle專有的格式保存
有一個完全的所有的備份片集合構成
構成一個完全備份或增量備份
2.2. Backup pieces 備份片
一個備份集由若干個備份片組成。每個備份片是一個單獨的輸出文件。一個備份片的大小是有限制的;如果沒有大小的限制, 備份集就只由一個備份片構成。備份片的大小不能大于使用的文件系統所支持的文件長度的最大值。
2.3. Image copies 鏡像備份
鏡像備份是獨立文件(數據文件、歸檔日志、控制文件)的備份。它很類似操作系統級的文件備份。它不是備份集或 備份片,也沒有被壓縮。
2.4. Full backup sets 全備份集合
全備份是一個或多個數據文件中使用過的數據塊的的備份。沒有使用過的數據塊是不被備份的,也就是說,oracle 進行備份集合的壓縮。
2.5. Incremental backup sets 增量備份集合
增量備份是指備份一個或多個數據文件的自從上一次同一級別的或更低級別的備份以來被修改過的數據塊。 與完全備份相同,增量備份也進行壓縮。
2.6. File multiplexing
不同的多個數據文件的數據塊可以混合備份在一個備份集中。
2.7. Recovery catalog resyncing 恢復目錄同步
使用恢復管理器執行backup、copy、restore或者switch命令時,恢復目錄自動進行更新,但是有關日志與歸檔日志信息沒有自動記入恢復目錄。需要進行目錄同步。使用resync catalog命令進行同步。
RMAN>resync catalog;
RMAN-03022:正在編譯命令:resync
RMAN-03023:正在執行命令:resync
RMAN-08002:正在啟動全部恢復目錄的 resync
RMAN-08004:完成全部 resync
[NextPage]
3. 恢復目錄
3.1.恢復目錄的概念
恢復目錄是由RMAN使用、維護的用來放置備份信息的倉庫。RMAN利用恢復目錄記載的信息去判斷如何執行需要的備份恢復操作。
恢復目錄可以存在于ORACLE數據庫的計劃中。
雖然恢復目錄可以用來備份多個數據庫,建議為恢復目錄數據庫創建一個單獨的數據庫。
恢復目錄數據庫不能使用恢復目錄備份自身。
3.2.建立恢復目錄
第一步,在目錄數據庫中創建恢復目錄所用表空間:
SQL> create tablespace rman_ts datafile ‘d:oracleoradatarmanrman_ts.dbf’ size 20M;
表空間已創建。
第二步,在目錄數據庫中創建RMAN 用戶并授權:
SQL> create user rman identified by rman default tablespace rman_ts temporary tablespace temp quota unlimited on rman_ts;
用戶已創建。
SQL> grant recovery_catalog_owner to rman ;
授權成功。
SQL> grant connect, resource to rman ;
授權成功。
第三步,在目錄數據庫中創建恢復目錄
C:>rman catalog rman/rman
恢復管理器:版本8.1.6.0.0 – Production
RMAN-06008:連接到恢復目錄數據庫
RMAN-06428:未安裝恢復目錄
RMAN>create catalog tablespace rman_ts;
RMAN-06431:恢復目錄已創建
注意:雖然使用RMAN不一定必需恢復目錄,但是推薦使用。因為恢復目錄記載的信息大部分可以通過控制文件來記載,RMAN在恢復數據庫時使用這些信息。不使用恢復目錄將會對備份恢復操作有限制。
3.3.使用恢復目錄的優勢
可以存儲腳本;
記載較長時間的備份恢復操作;
4. 啟動RMAN
RMAN為交互式命令行處理界面,也可以從企業管理器中運行。
為了使用下面的實例,先檢查環境符合:
the target database is called “his” and has the same TNS alias
user rman has been granted “recovery_catalog_owner “privileges
目標數據庫的連接用戶為internal帳號,或者以其他SYSDBA類型帳號連接
the recovery catalog database is called “rman” and has the same TNS alias
the schema containing the recovery catalog is “rman” (same password)
在使用RMAN前,設置NLS_DATE_FORMAT 和NLS_LANG環境變量,很多RMAN LIST命令的輸出結果是與日期時間相關的,這點在用戶希望執行以時間為基準的恢復工作也很重要。
[1]
正在看的ORACLE教程是:Oracle RMAN快速入門指南?! ∠吕黔h境變量的示范:
NLS_LANG= SIMPLIFIED CHINESE_CHINA.ZHS16GBK
NLS_DATE_FORMAT=DD-MON-YYYY HH24:MI:SS
為了保證RMAN使用時能連接恢復目錄,恢復目錄數據庫必須打開,目標數據庫至少要STARTED(unmount),否則RMAN會返回一個錯誤,目標數據庫必須置于歸檔模式下。
4.1.使用不帶恢復目錄的RMAN
設置目標數據庫的 ORACLE_SID ,執行:
% rman nocatalog
RMAN> connect target
RMAN> connect target internal/
4.2.使用帶恢復目錄的RMAN
% rman rman_ts rman/rman@rman
RMAN> connect target
% rman rman_ts rman/rman@rman target internal/
4.3.使用RMAN
一旦連接到目標數據庫,可以通過交互界面或者事先存儲的腳本執行指定RMAN命令, 下面是一個使用RMAN交互界面的實例:
RMAN> resync catalog;
RMAN-03022:正在編譯命令:resync
RMAN-03023:正在執行命令:resync
RMAN-08002:正在啟動全部恢復目錄的 resync
RMAN-08004:完成全部 resync
使用腳本的實例:
RMAN> execute script alloc_1_disk;
創建或者替代存儲的腳本:
RMAN> replace script alloc_1_disk {
2> allocate channel d1 type disk;
3> }
5.注冊或者注銷目標數據庫
5.1.注冊目標數據庫
數據庫狀態:
恢復目錄狀態:打開
目標數據庫:加載或者打開
目標數據庫在第一次使用RMAN之前必須在恢復目錄中注冊:
第一步,啟動恢復管理器,并且連接目標數據庫:
C:>rman target internal/oracle@his catalog rman/rman@rman
恢復管理器:版本8.1.6.0.0 – Production
RMAN-06005:連接到目標數據庫:HIS (DBID=3021445076)
RMAN-06008:連接到恢復目錄數據庫
第二步,注冊數據庫:
RMAN> register database;
RMAN-03022:正在編譯命令:register
RMAN-03023:正在執行命令:register
RMAN-08006:注冊在恢復目錄中的數據庫
RMAN-03023:正在執行命令:full resync
RMAN-08002:正在啟動全部恢復目錄的resync
RMAN-08004:完成全部resync
5.2.注銷目標數據庫
RMAN提供了一個注銷工具,叫DBMS_RCVCAT工具包,請注意一旦注銷了該目標數據庫,就不可以使用恢復目錄中含有的備份集來恢復數據庫了。
為了能注銷數據庫,需要獲得數據庫的標識碼(DB_ID)和數據庫鍵值(DB_KEY)。其中連接目標數據庫時將會獲得DB_ID。
C:>rman target internal/oracle@his catalog rman/rman@rman
恢復管理器:版本8.1.6.0.0 – Production
RMAN-06005:連接到目標數據庫:HIS (DBID=3021445076)
RMAN-06008:連接到恢復目錄數據庫
其中DBID=3021445076,利用DBID=3021445076查詢數據庫鍵值碼:
連接到目標數據庫,查詢db表:
SQL> select * from db;
DB_KEY DB_ID CURR_DBINC_KEY
———- ———- ————–
1 3021445076 2
獲得DB_KEY=1,這樣,該目標數據庫DB_KEY=1,DBID=3021445076,利用兩個值使用DBMS_RCVCAT工具包就可以注銷數據庫:
SQL> execute dbms_rcvcat.unregisterdatabase(1,3021445076);
PL/SQL 過程已成功完成。
至此,注銷數據庫操作完成。
[NextPage]
6.操作已有的備份
6.1.加入目錄數據庫
數據庫狀態:
恢復目錄:打開
目標數據庫:加載或者打開
如果存在8.x版本以前創建的備份數據想注冊到目標數據庫,可以采用如下手工方式加入到恢復目錄中,
RMAN> catalog datafilecopy ‘/oracle/ …. /system01.dbf’;
使用如下命令顯示恢復目錄中包含的文件
RMAN> list copy of database;
6.2.從目錄數據庫中刪除
第一步:查看備份信息:
RMAN>list backup;
RMAN-03022:正在編譯命令:list
備份集列表
關鍵字 Recid 標記 LV 集合標記 集合計數 完成時間
——- ———- ———- — ———- ———- ———————-
1104 2 501364455 0 501364446 2 06-8月 -03
備份段列表
關鍵字 Pc# Cp# 狀態 完成時間 段名
——- — — ———– ———————- ————————
1106 1 1 AVAILABLE 06-8月 -03 D:ORACLEORA81DATABASE
02EU4DMU_1_1
數據文件包括列表
文件 名稱 LV 類型 檢查點SCN 檢查點時間
—- ————————————- — —- ———-&
[2]
正在看的ORACLE教程是:Oracle RMAN快速入門指南。nbsp;————-
3 D:ORACLEORADATAHISUSERS01.DBF 0 Full 160052 06-8月 -03
備份集的關鍵字為1104。
第二步:定義delete通道:
RMAN>allocate channel for delete type disk;
RMAN-03022:正在編譯命令:allocate
RMAN-03023:正在執行命令:allocate
RMAN-08030:分配的通道:delete
RMAN-08500:通道 delete:sid=19 devtype=DISK
第三步:刪除backupset備份集
RMAN>change backupset 1104 delete;
RMAN-03022:正在編譯命令:change
RMAN-08073:已刪除備份段
RMAN-08517:備份段 handle=D:ORACLEORA81DATABASE
亚洲国产精品久久66|
久久夜色精品国产噜噜亚洲a|
久久精品aⅴ无码中文字字幕不卡|
狠狠色丁香婷婷综合久久来
|
久久综合给合久久狠狠狠97色69|
欧洲成人午夜精品无码区久久|
丁香五月网久久综合|
国内精品久久久久久久影视麻豆
|
久久久综合九色合综国产|
久久久久亚洲AV成人网人人软件|
久久精品青青草原伊人|
99久久夜色精品国产网站|
久久久久久伊人高潮影院|
国产99久久九九精品无码|
亚洲综合熟女久久久30p|
精品久久久久久无码中文字幕|
久久亚洲国产成人精品性色|
久久精品国产99国产精品|
久久w5ww成w人免费|
久久亚洲精品国产亚洲老地址
|
99久久99这里只有免费的精品|
一本久久免费视频|
91精品婷婷国产综合久久|
国产成人精品免费久久久久|
久久久噜噜噜久久中文字幕色伊伊
|
久久青青草原国产精品免费|
狠狠色狠狠色综合久久|
欧美久久一区二区三区|
久久久久亚洲精品男人的天堂|
精品久久久久久|
av午夜福利一片免费看久久|
国产色综合久久无码有码|
色悠久久久久久久综合网|
久久www免费人成精品香蕉|
久久综合给合久久国产免费|
蜜桃麻豆WWW久久囤产精品|
伊人久久一区二区三区无码|
亚洲欧洲中文日韩久久AV乱码|
久久久久香蕉视频|
午夜视频久久久久一区
|
伊人久久精品无码二区麻豆|