RMAN概述

 RMAN備份databse、tablespaces、datafiles、control files、archive logs,經常的工作做成腳本,可執行塊級別block-level增量備份,跳過unused blocks,指定備份limits(數據庫邊工作邊備份),備份時檢測損壞的block,通過自動併發parallelization、減少redo、限制I/O、tape streaming磁帶流來增加備份性能


RMAN體系結構

target database目標數據庫,要備份的數據庫,RMAN通過網絡鏈接連上去

備份信息、腳本存儲在目標數據庫控制文件裏或recovery catalog目錄數據庫

channel通道就是一個鏈接,RMAN連上去進行備份,可以分配任意個鏈接,會有server process和RMAN連接

有的server process讀數據寫到disk,有的寫到tape

還有2個 polling鏈接 備用   default鏈接 缺省 和目錄數據庫有rcvcat鏈接

RMAN也能集成在OEM上


rman target sys/oracle@orcl nocatalog

orcl在tnsnames.ora中設置,缺省在$ORACLE_HOME/network/admin

nocatalog不使用目錄數據庫


RMAN repository倉庫有2個,一個是目標數據庫,一個是目錄數據庫。元數據會始終記錄在目標數據庫control file

control_file_record_keep_time決定記錄被覆蓋前在控制文件最小保存天數,如果沒到時間,有新數據要用,控制文件會grow in size


SBT:System Back to Tape往磁帶上進行系統備份,把數據寫到磁帶上

channel分兩種:自動分配、手動分配


自動分配channel使用configure進行配置

連上查看配置信息,從連接數據庫control file讀取

修改缺省設備類型爲tape

清除變成缺省值

RMAN>configure default device type to sbt;配置缺省設備類型,自動分配通道,隱式的看不到

RMAN>configure device type disk parallelism 3; 指定併發度3參數

RMAN>configure channel device type disk  指定目錄,格式

  2>format = ‘/backup/rman/%u’;

RMAN>configure channel device type disk  

  2>maxpiecesize 2G;

RMAN>configure retention policy to recovery   指定恢復窗口

  2>window of 7 days;

RMAN>configure retention policy to redundancy 2   冗餘爲2

RMAN>configure controlfile autobackup on;


手動分配channel, backup、copy、restore命令至少需要一個channel,RMAN連上來server process與之對應,相當於dedicated server模式,能指定併發度,寫到不同media介質上,設置讀寫速度,避免對系統造成衝擊

RMAN>run {

  2>allocate channel c1 type disk           分配c1 channel進行備份

  3>   format = ‘/db01/backup/user0520.bak’;

  4>backup datafile ‘/db01/ORADATA/users01.dbf’;}    備份指令


RMAN>run {

    backup

    incremental level 0

    format ‘/u01/db01/backup/%d_%s_%p’

    fileperset 5

   (database include current controlfile);

   sql ‘alter database archive log current’;

   }


介質管理 磁帶庫、光盤塔等存儲設備要支持RMAN,配置好*.iso/*.dio動態庫,RMAN、oracle就能操縱存儲設備了


RMAN connection類型

target db

recovery catalog db 備份很多數據庫,易於維護

auxiliary輔助 db:standby db、duplicate複製 db、TSPITR instance(TableSpace Point In Time

Recovery表空間時間點恢復)

rman target / as sysdba 連接到本地

rman target / nocatalog

log  寫RMAN輸出結果追加到log裏

 @  執行命令腳本


inactive mode  分析時多用analysis

batch mode自動工作

使用here document參考 http://zh.wikipedia.org/wiki/Here_document

一個簡單的腳本 vi rman.sh

#!/bin/bash

rman target sys/oracle@orcl nocatalog <<!

show all;

exit;

!


sh rman.sh 執行

       RMAN常用命令

RMAN>report schema;      target db表空間情況  

RMAN>list backup of database;

RMAN>list backup of datafile “/db01/ORADATA/u03/users01.dbf”;

RMAN>list copy of tablespace “system”;

RMAN>list backup of tablespace “SYSTEM”;    

RMAN>report need backup increamental 3;  增量備份

RMAN>report need backup days 3;

RMAN>report need backup redundancy 2;

RMAN>report need backup recovery window of 3 days;


RMAN佔用很多資源、內存,使用show parameter process命令查看,必要時使用alter system set 。。 scope=spfile;分配合適資源

連接需要sysdba權限,OS能訪問存儲設備,remote操作設置口令文件,確保口令文件備份了



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章