oracle rman備份介紹和恢復(fù)目錄創(chuàng)建
RMAN是Recovery Manager的縮寫,為Oracle的恢復(fù)管理器,是Oracle數(shù)據(jù)庫推薦提供的一種恢復(fù)和備份數(shù)據(jù)庫的工具,也是數(shù)據(jù)庫管理員管理數(shù)據(jù)庫常用的工具之一。
RMAN的特點:
那么RMAN究竟有什么特點呢?和我們之前學(xué)習(xí)的exp/imp和expdp/impdp的數(shù)據(jù)庫備份和恢復(fù)有什么區(qū)別呢?在Oracle官網(wǎng)給出了RMAN的特點主要有以下,我們看看有哪些不一樣:
1、它可以備份數(shù)據(jù)庫、表空間、數(shù)據(jù)文件、控制文件以及日志文件。而exp備份是不能進(jìn)行控制文件、數(shù)據(jù)文件和日志文件的備份。
2、壓縮備份可以只備份發(fā)生變化的內(nèi)容。這是exp完全做不到的事情。
3、集成了第三方磁帶媒介軟件。
4、可以在Oracle數(shù)據(jù)庫的目錄中存放備份信息,意思就是可以用數(shù)據(jù)庫來存儲備份的信息,這樣子更好的對備份信息進(jìn)行管理。
RMAN常用概念:
在我們使用RMAN進(jìn)行Oracle數(shù)據(jù)備份和恢復(fù)管理時,會經(jīng)常遇到一些常用的概念,這里做個解釋。主要有目標(biāo)數(shù)據(jù)庫、RMAN客戶端、閃回區(qū)、介質(zhì)管理、恢復(fù)目錄等。
目標(biāo)數(shù)據(jù)庫:
當(dāng)在使用RMAN進(jìn)行數(shù)據(jù)庫備份時,目標(biāo)數(shù)據(jù)庫就是使用RMAN工具進(jìn)行備份和還原的數(shù)據(jù)庫,即我們要進(jìn)行備份的對象。
RMAN客戶端:
當(dāng)使用RMAN工具進(jìn)行數(shù)據(jù)備份時,使用的前提就是計算機或服務(wù)器要擁有RMAN客戶端。
一般情況下,在Oracle數(shù)據(jù)庫安裝時,就會默認(rèn)安裝了RMAN客戶端,因為這個是Oracle官方推薦的備份工具。通常安裝的目錄在Oracle的安裝目錄下。
閃回區(qū):
在Oracle10g后提出閃回區(qū)的概念,閃回區(qū)(Flash Recovery Area) 是在磁盤上的一個區(qū)域,存放與數(shù)據(jù)庫的備份和恢復(fù)相關(guān)的一些文件,使用閃回區(qū)能夠方便用戶備份和還原數(shù)據(jù)庫。
介質(zhì)管理:
介質(zhì)管理設(shè)備通常被稱為SBT (System Backup to Tape)設(shè)備,也就是把數(shù)據(jù)庫備份到磁帶中。RMAN通過介質(zhì)管理器將數(shù)據(jù)備份到磁帶上,介質(zhì)管理器通常由第三方軟件商提供。它將數(shù)據(jù)塊中的數(shù)據(jù)流從RMAN通道進(jìn)程傳遞到對應(yīng)的磁帶上,是一個數(shù)據(jù)傳輸?shù)闹薪椤?/p>
恢復(fù)目錄:
恢復(fù)目錄(Recovery Catalog)是一個獨立的數(shù)據(jù)庫,用于存放目標(biāo)數(shù)據(jù)庫的備份。可以存放一個目標(biāo)數(shù)據(jù)庫,也可以多個。
通過上面RMAN的介紹,我們知道RMAN中恢復(fù)目錄是一個獨立的數(shù)據(jù)庫,是用來存放目標(biāo)數(shù)據(jù)庫的備份信息。在我們使用RMAN進(jìn)行備份時,使用恢復(fù)目錄進(jìn)行備份信息的存儲是Oracle官方推薦的一種方式,因為這種方式對比使用控制文件存儲更為節(jié)省空間、更安全。
Oracle創(chuàng)建恢復(fù)目錄時,為了數(shù)據(jù)安全起見,一般會把恢復(fù)目錄的數(shù)據(jù)庫創(chuàng)建在另外一個Oracle服務(wù)器上,而不是在同一個數(shù)據(jù)庫中或者同一個服務(wù)器上,因為防止出現(xiàn)服務(wù)器宕機,導(dǎo)致數(shù)據(jù)文件一起丟失,而不能進(jìn)行恢復(fù),但是這里筆者為了演示,就直接把恢復(fù)目錄同時創(chuàng)建在本機上。
在創(chuàng)建恢復(fù)目錄時還要考慮數(shù)據(jù)庫的容量,這個容量的大小當(dāng)然要取決于目標(biāo)數(shù)據(jù)庫容量的大小,這里筆者會創(chuàng)建一個100M大小的表空間,專門單獨存放恢復(fù)目錄的數(shù)據(jù)。
創(chuàng)建恢復(fù)目錄的步驟分為創(chuàng)建恢復(fù)目錄數(shù)據(jù)庫并創(chuàng)建用戶、給恢復(fù)目錄用戶賦角色和權(quán)限、創(chuàng)建恢復(fù)目錄三個步驟。
1、在本地創(chuàng)建一個恢復(fù)目錄專用的用戶RM(這里我們就不獨立創(chuàng)建一個遠(yuǎn)程的數(shù)據(jù)庫和數(shù)據(jù)庫用戶),具體語法如下:
--創(chuàng)建恢復(fù)目錄專用的表空間rmtablespace
create tablespace rmtablespace
datafile 'E:APPADMINORADATAORCL mtablespace.DBF'
size 100m
autoextend on next 10m maxsize 500m
permanent
extent management local;
--創(chuàng)建用戶rm
create user rm--用戶名
identified by "123456"--密碼
default tablespace rmtablespace--表空間名
temporary tablespace temp --臨時表空間名
quota unlimited on rmtablespace--表空間無限制
profile DEFAULT --數(shù)據(jù)文件(默認(rèn)數(shù)據(jù)文件)
account unlock-- 賬戶是否解鎖(lock:鎖定、unlock解鎖)
2、給恢復(fù)目錄用戶rm授權(quán)限
只創(chuàng)建一個數(shù)據(jù)庫的用戶是不能實現(xiàn)RMAN備份與恢復(fù)工作的,還需要給該用戶賦予權(quán)限和角色?;謴?fù)目錄用戶應(yīng)該擁有數(shù)據(jù)庫管理員的權(quán)限,并在此基礎(chǔ)上還要擁有RECOVERY_CATALOG_OWNER的權(quán)限。具體授權(quán)語法如下:
-- 授權(quán)系統(tǒng)管理員權(quán)限
grant dba to RM;
grant connect to RM;
grant resource to RM;
--授權(quán)擁有恢復(fù)目錄權(quán)限
grant recovery_catalog_owner to RM;
3、創(chuàng)建恢復(fù)目錄
創(chuàng)建好恢復(fù)目錄的用戶,并進(jìn)行相應(yīng)的授權(quán)后,就可以創(chuàng)建恢復(fù)目錄了,創(chuàng)建恢復(fù)目錄是在DOS界面進(jìn)行操作的。
(1)首先進(jìn)入恢復(fù)目錄管理器(進(jìn)入命令行輸入RMAN),如下圖:
(2)通過創(chuàng)建好的恢復(fù)目錄用戶進(jìn)行登錄連接到恢復(fù)目錄數(shù)據(jù)庫,具體命令如下:
connect catlog rm/123456
連接到恢復(fù)目錄數(shù)據(jù)庫,就可以通過命令行創(chuàng)建恢復(fù)目錄了,具體命令如下:
create catalog
至此,RMAN的恢復(fù)目錄已經(jīng)創(chuàng)建完畢。
前面已經(jīng)創(chuàng)建好了恢復(fù)目錄,在我們使用RMAN進(jìn)行備份時,要連接到恢復(fù)目錄才能夠進(jìn)行數(shù)據(jù)備份。連接到恢復(fù)目錄的方式也是在DOS的命令行上就可以直接操作。
RMAN連接恢復(fù)目錄語法:
rman target user/password@servicename catalog user/password@serviecename
語法解析:
1、target指定的是目標(biāo)數(shù)據(jù)庫(既是要進(jìn)行備份的數(shù)據(jù)庫)。
2、catalog后面指定的是恢復(fù)目錄的數(shù)據(jù)庫。
下面就利用上面的語法進(jìn)行連接剛剛創(chuàng)建好的恢復(fù)目錄,結(jié)果如下:
這里連接恢復(fù)目錄時,要注意假如恢復(fù)目錄在本地數(shù)據(jù)庫上,那實例名就不用填,一般實際開發(fā)環(huán)境中,恢復(fù)目錄的數(shù)據(jù)庫都會創(chuàng)建在遠(yuǎn)程服務(wù)器上,所以要填上實例串。
下一篇:oracle rman恢復(fù)到時間點