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