中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何通過搭建恢復目錄實現RMAN異地備份和恢復

發布時間:2021-11-09 14:28:47 來源:億速云 閱讀:122 作者:小新 欄目:關系型數據庫

這篇文章給大家分享的是有關如何通過搭建恢復目錄實現RMAN異地備份和恢復的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

一、為何需要恢復目錄

RMAN備份的存儲庫總是存在于RMAN目標數據庫的控制文件中的,這樣會有兩個問題:

1RMAN過分依賴目標數據庫控制文件,如果控制文件的所有副本都損壞了,將導致存儲庫丟失。這種情況下即便備份是完好的,但是由于丟失了RMAN備份的元數據信息,導致RMAN無法知道他們的存在而不能使用備份。

2、位于目標數據庫控制文件中的存儲庫,只能保存和恢復由control_file_record_keep_time參數指定的數據,默認該參數是保留7天。

因此,采用恢復目錄的手段是必要的,主要體現在以下幾點:

1、采用恢復目錄則RMAN的備份不再依賴于目標數據庫控制文件。這樣即便控制文件的所有副本都損壞了,通過恢復目錄也可以很方便的使用備份。較好的做法是將恢復目錄數據庫存放在與目標數據庫不同的機器上。

2、恢復目錄可以存儲RMAN腳本。沒有恢復目錄,則腳本必須做為操作系統文件存儲在運行RMAN可執行文件的機器上。

3、恢復目錄可以存儲多個數據庫的元數據,做為多個數據庫備份和恢復信息的集中式存儲庫。并且一個目錄可用于任何平臺上的數據庫,即它的連接過程是跨平臺的。

4、使用恢復目錄還可以簡化一些操作。如恢復過程對于目標數據庫不必處于MOUNT模式,當連接到恢復目錄時,RMAN能夠自動定位SPFILE和控制文件的備份并還原它們,簡化恢復嚴重受損的數據庫的引導過程。

5、恢復目錄保存元數據的期限長度沒有限制。而基于控制文件的存儲庫保留數據的時間長度則完全由實例參數control_file_record_keep_time來確定。

恢復目錄數據庫通常不是特別龐大或繁忙的數據庫,不會有很高的資源要求,但卻能夠顯著增強RMAN功能。

RMAN可執行文件可以同時連接最多三個數據庫實例:

1、將對其應用備份或還原及恢復操作的一個目標數據庫;

2、存儲描述目標數據庫及其所有可用備份的元數據的恢復目錄數據庫;

3、使用目標數據庫的備份創建的一個輔助數據庫。

二、利用恢復目錄數據庫實現異地備份

有時我們希望將RMAN備份保存在異地,以便更好的容災,這里說明一下在Windows環境中的實現方法。

1、修改本地數據庫Oracle后臺服務

修改Oracle監聽服務和數據庫服務的登錄方式,用確定的賬戶登錄,而不是默認的本地系統賬戶。

如何通過搭建恢復目錄實現RMAN異地備份和恢復


如何通過搭建恢復目錄實現RMAN異地備份和恢復


修改后重啟這兩個服務。

2、在異地機器上創建好訪問本地目標數據庫的服務名,保證能夠正常連接

mes =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = vm-ora11g-1)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = mes)

    )

  )

3、在異地機器上搭建恢復目錄數據庫,專門用于RMAN備份的元數據管理。創建恢復目錄并非必須,但為了更好的異地容災,防止本地機器遭到破壞后導致所有控制文件丟失,那么即便存在RMAN備份,也是難以使用的。

在異地機器上創建恢復目錄分為以下幾個步驟:

1)創建一個數據庫用作恢復目錄。如創建一個數據庫名為catdb

2)創建一個存儲目錄對象的表空間

SQL> create tablespace rmancat datafile 'd:\oradata\catdb\rmancat01.dbf' size 200m;

3)創建一個默認使用存儲目錄對象表空間的用戶

SQL> create user rman identified by rman default tablespace rmancat quota unlimited on rmancat;

4)授予該用戶recovery_catalog_owner角色,它包括了必要的對象權限

SQL> grant recovery_catalog_owner to rman;

5)用RMAN連接到目錄數據庫,并使用create catalog命令創建目錄

C:\> rman catalog rman/rman@catdb

RMAN> create catalog;

6)用RMANSYS用戶身份連接到目標數據庫

RMAN> connect target sys/mesHz2@mes

7)在目錄中注冊目標數據庫,從而將相關信息從目標數據庫的控制文件復制到目錄中

RMAN> register database;

8)同時連接到目錄和目標數據庫進行備份和恢復操作

C:\> rman target sys/mesHz2@mes catalog rman/rman

該命令對目標數據庫和目錄數據庫所在環境的RMAN版本關系是有要求的,即RMAN可執行文件的版本必須與目標數據庫的版本相同,而創建恢復目錄的RMAN版本必須等于或高于在其中注冊的任何數據庫的版本。

4、創建異地備份腳本

RMAN連接成功后可創建常用的備份腳本,腳本將自動保存在恢復目錄數據庫中。

為達到完善的備份效果,先修改目標數據庫RMAN備份參數,對控制文件和SPFILE文件開啟自動備份

RMAN> configure controlfile autobackup on;

RMAN> configure controlfile autobackup format for device type disk to '\\vm-catdb\e\rman_bak\mes\control_bak\%F';

以下是采用并行方式的多通道備份腳本,執行增量級別0備份,自動完成對備份集的檢查和清理,手工指定備份位置到網絡機器vm-catdb的路徑上,而控制文件和SPFILE文件根據配置將自動備份

create global script bak_0 {

sql 'alter system archive log current';

crosscheck backup;

delete noprompt expired backup;

crosscheck archivelog all;

delete noprompt expired archivelog all;

allocate channel c1 type disk;

allocate channel c2 type disk;

backup incremental level 0 as compressed backupset

database

format '\\vm-catdb\e\rman_bak\mes\d_%d_%u_%c_%T';

backup as compressed backupset

archivelog all delete all input

format '\\vm-catdb\e\rman_bak\mes\a_%d_%u_%c_%T';

delete noprompt obsolete;

release channel c1;

release channel c2;

}

以下則是對應的增量級別1備份的腳本

create global script bak_1 {

sql 'alter system archive log current';

crosscheck backup;

delete noprompt expired backup;

crosscheck archivelog all;

delete noprompt expired archivelog all;

allocate channel c1 type disk;

allocate channel c2 type disk;

backup incremental level 1 as compressed backupset

database

format '\\vm-catdb\e\rman_bak\mes\d_%d_%u_%c_%T';

backup as compressed backupset

archivelog all delete all input

format '\\vm-catdb\e\rman_bak\mes\a_%d_%u_%c_%T';

delete noprompt obsolete;

release channel c1;

release channel c2;

}

5、執行異地備份

在恢復目錄中執行0級備份腳本來完成對目標數據庫的全備份

RMAN> run {execute script bak_0;}

再次備份時可執行1級備份腳本來完成對目標數據庫的增量備份

RMAN> run {execute script bak_1;}

三、管理恢復目錄

目錄數據庫也可以和目標數據庫是同一個數據庫。這種情況下就應當在目標數據庫中創建一個用于存放RMAN恢復元數據的恢復目錄表空間rmancat,并將管理恢復目錄的用戶rman的默認表空間指向該表空間。之后以該用戶連接到目錄數據庫,同時也就連接到了目標數據庫,因為它們是同一個庫,然后再創建目錄

create catalog tablespace rmancat;

之后再注冊數據庫

register database;

目錄數據庫與任何生產數據庫一樣,應該運行在歸檔日志模式下,定期進行完整的備份。但是不要只是使用RMAN來備份恢復目錄數據庫,因為如果目錄數據庫損壞,那么還原它的任何嘗試都會出現一個遞歸性的問題:如果包含目錄信息的控制文件或表空間受損,那么打開數據庫并作為目錄連接它的任何操作都將失敗。因此,通過其它方式保護目錄數據庫是必要的,如用戶管理的備份。

如果出于某種原因沒有連接到目錄來執行備份,那么目錄存儲庫必須與控制文件存儲庫重新同步。在RMAN下一次同時連接到目標數據庫和目錄時會自動執行同步操作,重新同步操作將所有信息從控制文件存儲庫轉移到目錄中,從而保持它是最新的。因此,只有當沒有執行重新同步的周期超過control_file_record_keep_time時才會丟失有關備份的數據。

重新同步操作也可以在RMAN提示符中使用重新同步目錄的命令來強制執行

RMAN> resync catalog;

同時連接到目標數據庫和恢復目錄,可以用以下命令從恢復目錄中注銷目標數據庫

RMAN> unregister database;

如果要刪除創建的目錄,則命令為

RMAN> drop catalog;

通過目錄數據庫提供的一些視圖,包括rc_databaserc_tablespace rc_datafilerc_backup_setrc_backup_piece等,可以查詢在恢復目錄中注冊的目標數據庫信息以及備份的信息,另外還包括一些記錄RMAN運行狀態的信息,如rc_rman_configuration等。這些視圖都是以字母rc打頭

conn rman/rman

查看恢復目錄中的RMAN配置信息

col db_unique_name for a20

col name for a50

col value for a70

select db_unique_name, name, value from rc_rman_configuration;

DB_UNIQUE_NAME       NAME                                               VALUE

-------------------- -------------------------------------------------- ----------------------------------------------------------------------

MES                  CONTROLFILE AUTOBACKUP                             ON

MES                  CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE      DISK TO 'd:\rman_bak\mes\control_bak\%F'

MES                  CHANNEL                                            DEVICE TYPE DISK FORMAT   'd:\rman_bak\mes\%d_%u_%c_%T'

查看恢復目錄中的數據庫信息

select dbid, name from rc_database;

      DBID NAME

---------- --------------------------------------------------

2056489697 MES

查看恢復目錄中的表空間信息

col name for a20

select db_name, ts#, name, creation_time, included_in_database_backup, bigfile, temporary from rc_tablespace;

DB_NAME         TS# NAME                 CREATION_TIME       INC BIG TEM

-------- ---------- -------------------- ------------------- --- --- ---

MES               0 SYSTEM               2013-10-09 18:23:41 YES NO  NO

MES               1 SYSAUX               2013-10-09 18:23:44 YES NO  NO

MES               2 UNDOTBS1             2013-10-09 19:09:38 YES NO  NO

MES               3 TEMP                 2018-04-08 13:01:44 NO  NO  YES

MES               4 USERS                2013-10-09 18:23:53 YES NO  NO

MES              11 FDA                  2018-04-24 09:17:41 YES NO  NO

MES               7 CMES                 2018-04-17 21:03:01 YES NO  NO

MES               8 RMES                 2018-04-17 21:03:34 YES NO  NO

MES               9 HMES                 2018-04-17 21:04:11 YES NO  NO

MES              10 INDX                 2018-04-17 21:04:54 YES NO  NO

MES               6 EXAMPLE              2018-04-08 13:02:46 YES NO  NO

查看恢復目錄中的數據文件信息

col name for a50

select db_name, ts#, tablespace_name, file#, name, bytes/1024/1024 size_m, creation_time from rc_datafile;

DB_NAME         TS# TABLESPACE_NAME                     FILE# NAME                                           SIZE_M CREATION_TIME

-------- ---------- ------------------------------ ---------- -------------------------------------------------- ---------- -------------------

MES               0 SYSTEM                                  1 D:\ORADATA\MES\SYSTEM01.DBF                       770 2013-10-09 18:23:41

MES               1 SYSAUX                                  2 D:\ORADATA\MES\SYSAUX01.DBF                       580 2013-10-09 18:23:44

MES               2 UNDOTBS1                                3 D:\ORADATA\MES\UNDOTBS01.DBF                      100 2013-10-09 19:09:38

MES               4 USERS                                   4 D:\ORADATA\MES\USERS01.DBF                          5 2013-10-09 18:23:53

MES               6 EXAMPLE                                 5 D:\ORADATA\MES\EXAMPLE01.DBF                   331.25 2018-04-08 13:02:46

MES               7 CMES                                    6 D:\ORADATA\MES\CMES01.DBF                         100 2018-04-17 21:03:01

MES               8 RMES                                    7 D:\ORADATA\MES\RMES01.DBF                         100 2018-04-17 21:03:34

MES               9 HMES                                    8 D:\ORADATA\MES\HMES01.DBF                         100 2018-04-17 21:04:11

MES              10 INDX                                    9 D:\ORADATA\MES\INDX01.DBF                         100 2018-04-17 21:04:54

MES              11 FDA                                    10 D:\ORADATA\MES\FDA01.DBF                          100 2018-04-24 09:17:41

查看恢復目錄中的備份集信息

select db_id, bs_key, backup_type, incremental_level, start_time, completion_time, elapsed_seconds, controlfile_included from rc_backup_set;

     DB_ID     BS_KEY B INCREMENTAL_LEVEL START_TIME          COMPLETION_TIME     ELAPSED_SECONDS CONTROL

---------- ---------- - ----------------- ------------------- ------------------- --------------- -------

2056489697       6303 D                 0 2018-05-02 11:59:20 2018-05-02 11:59:32              12 NONE

2056489697       6304 D                 0 2018-05-02 11:59:35 2018-05-02 11:59:36               1 BACKUP

2056489697       6305 D                 0 2018-05-02 11:59:37 2018-05-02 11:59:37               0 NONE

2056489697       6306 D                 0 2018-05-02 11:59:20 2018-05-02 11:59:39              19 NONE

2056489697       6343 L                   2018-05-02 11:59:42 2018-05-02 11:59:42               0 NONE

2056489697       6344 L                   2018-05-02 11:59:42 2018-05-02 11:59:43               1 NONE

2056489697       6345 L                   2018-05-02 11:59:44 2018-05-02 11:59:44               0 NONE

2056489697       6370 D                   2018-05-02 11:59:46 2018-05-02 11:59:48               2 BACKUP

查看恢復目錄中的備份片信息

col handle for a70

select db_id, bp_key, bs_key, backup_type, incremental_level, handle, tag, start_time, completion_time, elapsed_seconds, bytes, compressed from rc_backup_piece;

     DB_ID     BP_KEY     BS_KEY B INCREMENTAL_LEVEL HANDLE                                                         TAG                              START_TIME          COMPLETION_TIME     ELAPSED_SECONDS      BYTES COM

---------- ---------- ---------- - ----------------- ---------------------------------------------------------------------- -------------------------------- ------------------- ------------------- --------------- ---------- ---

2056489697       6307       6303 D                 0 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_6FT1SM0O_1_20180502                    TAG20180502T115920               2018-05-02 11:59:22 2018-05-02 11:59:31        9  105791488 YES

2056489697       6308       6304 D                 0 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_6HT1SM17_1_20180502                    TAG20180502T115920               2018-05-02 11:59:36 2018-05-02 11:59:36        0   1130496 YES

2056489697       6309       6305 D                 0 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_6IT1SM19_1_20180502                    TAG20180502T115920               2018-05-02 11:59:37 2018-05-02 11:59:37        0     81920 YES

2056489697       6352       6344 L                   \\VM-CATDB\E\RMAN_BAK\MES\A_MES_6KT1SM1E_1_20180502                    TAG20180502T115942               2018-05-02 11:59:42 2018-05-02 11:59:42        0   1102848 YES

2056489697       6310       6306 D                 0 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_6GT1SM0O_1_20180502                    TAG20180502T115920               2018-05-02 11:59:22 2018-05-02 11:59:39       17  211460096 YES

2056489697       6351       6343 L                   \\VM-CATDB\E\RMAN_BAK\MES\A_MES_6JT1SM1E_1_20180502                    TAG20180502T115942               2018-05-02 11:59:42 2018-05-02 11:59:42        0    376832 YES

2056489697       6353       6345 L                   \\VM-CATDB\E\RMAN_BAK\MES\A_MES_6LT1SM1G_1_20180502                    TAG20180502T115942               2018-05-02 11:59:44 2018-05-02 11:59:44        0      8704 YES

2056489697       6372       6370 D                   \\VM-CATDB\E\RMAN_BAK\MES\CONTROL_BAK\C_MES_6MT1SM1I_1_20180502        TAG20180502T115946               2018-05-02 11:59:47 2018-05-02 11:59:48        1   10141696 NO

四、使用恢復目錄存儲RMAN腳本

RMAN腳本可以作為操作系統文件來存儲,如以下是腳本文件e:\script1.rman內容

run {

allocate channel c1 type disk;

allocate channel c2 type disk;

backup incremental level 1 as compressed backupset

database plus archivelog delete all input;

release channel c1;

release channel c2;

}

執行腳本時,用RMAN連接到目標數據庫和恢復目錄,并用@符連接和執行

C:\> rman target / catalog rman/rman@catdb @e:\script1.rman

也可以直接把腳本存儲在恢復目錄中。以下一些命令是關于腳本的,注意這些命令必須同時連接到目標數據庫和目錄數據庫才能使用,腳本創建同時會進行語法有效性檢查。默認情況下,腳本是目標數據庫特有的,使用關鍵字global表示腳本對于所有目標數據庫都可見,否則同樣的腳本需要分別連接到每個目標數據庫去創建它。

創建腳本

create { global } script

替換腳本

replace { global } script

運行腳本

execute { global } script

顯示腳本

print { global } script

列出腳本

list { global } script names

刪除腳本

delete { global } script

可以使用如下的命令將作為操作系統文件存儲的RMAN腳本保存為目錄數據庫中的腳本

RMAN> create script script1 from file 'e:\script1.rman';

沒有直接編輯腳本的命令,但是可以通過查詢視圖rc_stored_scriptrc_stored_script_line來查看存儲的腳本,并可用DML來編輯它們。為方便編輯,也可以將腳本轉出為操作系統文件

RMAN> print script script1 to file 'e:\script1.rman';

通過視圖rc_stored_scriptrc_stored_script_line來查詢存儲的腳本,需要時可以直接通過DML操作來編輯

col script_name for a30

col script_comment for a30

select * from rc_stored_script;

    DB_KEY DB_NAME  SCRIPT_NAME                    SCRIPT_COMMENT

---------- -------- ------------------------------ ------------------------------

           GLOBAL   bak_1

         1 MES      script1

           GLOBAL   bak_0

col script_name for a30

col text for a80

select * from rc_stored_script_line where script_name = 'script1';

    DB_KEY SCRIPT_NAME                          LINE TEXT

---------- ------------------------------ ---------- --------------------------------------------------------------------------------

         1 script1                                 1 run {

         1 script1                                 2 allocate channel c1 type disk;

         1 script1                                 3 allocate channel c2 type disk;

         1 script1                                 4 backup incremental level 1 as compressed backupset

         1 script1                                 5 database plus archivelog delete all input;

         1 script1                                 6 release channel c1;

         1 script1                                 7 release channel c2;

         1 script1                                 8 }

最后可以在恢復目錄中執行存儲的腳本,目錄首先會自動執行一次與目標數據庫的同步,然后再開始執行備份

RMAN> run {execute script script1;}

五、數據庫破壞恢復實驗

這里模擬一個故障處理的過程,假定目標數據庫的參數文件和控制文件都已損壞,數據文件也部分損壞。并且恢復目錄數據庫因故障無法啟動,雖然備份存在于恢復目錄數據庫服務器的磁盤上,但RMAN此時無法直接找到這些備份,這種情況看如何能將系統恢復。

實驗前的工作:

1、在恢復目錄機器上用RMAN連接到目標數據庫和恢復目錄數據庫,并確認備份完整

C:\Users\Administrator>rman target sys/mesHz2@mes catalog rman/rman

RMAN> resync catalog;

RMAN> list backup;

如果目標數據庫沒有備份,則實驗前先做一次完整的備份。

2、將恢復目錄數據庫關閉,模擬恢復目錄不可用。

shutdown immediate;

3、用shutdown abort直接關閉目標數據庫,刪除參數文件SPFILEPFILE、控制文件的所有副本、數據文件cmes01.dbf

恢復實驗:

1、在恢復目錄數據庫服務器上用RMAN命令連接到目標數據庫,并啟動到nomountRMAN將使用一個啞參數文件來啟動實例

C:\Users\Administrator>rman target sys/mesHz2@mes

恢復管理器: Release 11.2.0.4.0 - Production on 星期三 5月 2 22:54:27 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

已連接到目標數據庫 (未啟動)

RMAN> startup nomount

啟動失敗: ORA-01078: failure in processing system parameters

LRM-00109: ???????????????? 'C:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\INITMES.ORA'

在沒有參數文件的情況下啟動 Oracle 實例以檢索 spfile

Oracle 實例已啟動

系統全局區域總計    1068937216 字節

Fixed Size                     2288080 字節

Variable Size                285214256 字節

Database Buffers             775946240 字節

Redo Buffers                   5488640 字節

2、因為知道磁盤備份的所在位置,因此可以手動指定備份路徑給RMAN。首先恢復參數文件,然后使用恢復的SPFILE重啟實例,再還原控制文件

RMAN> restore spfile from '\\vm-catdb\e\rman_bak\mes\control_bak\C-2056489697-20180502-06';

啟動 restore 于 2018-05-02 22:56:06

使用目標數據庫控制文件替代恢復目錄

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=396 設備類型=DISK

通道 ORA_DISK_1: 正在從 AUTOBACKUP \\vm-catdb\e\rman_bak\mes\control_bak\C-2056489697-20180502-06 還原 spfile

通道 ORA_DISK_1: 從 AUTOBACKUP 還原 SPFILE 已完成

完成 restore 于 2018-05-02 22:56:10

RMAN> shutdown abort

Oracle 實例已關閉

RMAN> startup nomount

已連接到目標數據庫 (未啟動)

Oracle 實例已啟動

系統全局區域總計    1286066176 字節

Fixed Size                     2280896 字節

Variable Size                771752512 字節

Database Buffers             503316480 字節

Redo Buffers                   8716288 字節

RMAN> restore controlfile from '\\vm-catdb\e\rman_bak\mes\control_bak\C-2056489697-20180502-06';

啟動 restore 于 2018-05-02 22:59:05

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=156 設備類型=DISK

通道 ORA_DISK_1: 正在還原控制文件

通道 ORA_DISK_1: 還原完成, 用時: 00:00:02

輸出文件名=D:\ORADATA\MES\CONTROL01.CTL

輸出文件名=E:\FAST_RECOVERY_AREA\MES\CONTROL02.CTL

完成 restore 于 2018-05-02 22:59:08

3、用恢復的控制文件重啟實例到mount狀態,根據已知的備份集存儲位置,重新在存儲庫中編目和注冊備份文件

RMAN> shutdown abort

Oracle 實例已關閉

RMAN> startup mount

已連接到目標數據庫 (未啟動)

Oracle 實例已啟動

數據庫已裝載

系統全局區域總計    1286066176 字節

Fixed Size                     2280896 字節

Variable Size                771752512 字節

Database Buffers             503316480 字節

Redo Buffers                   8716288 字節

為保證恢復成功,先更改RMAN備份文件所在路徑,再用crosscheck backup命令做交叉檢查,確認備份狀態為expired已失效,再用delete expired命令將備份登記刪除,當然這個只是刪除了備份記錄,而磁盤上的備份文件不會被刪掉

RMAN> crosscheck backup;

啟動 implicit crosscheck backup 于 2018-05-02 23:01:55

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=189 設備類型=DISK

已交叉檢驗的 5 對象

完成 implicit crosscheck backup 于 2018-05-02 23:01:57

啟動 implicit crosscheck copy 于 2018-05-02 23:01:57

使用通道 ORA_DISK_1

完成 implicit crosscheck copy 于 2018-05-02 23:01:57

搜索恢復區中的所有文件

正在編制文件目錄...

目錄編制完畢

已列入目錄的文件的列表

=======================

文件名: E:\FAST_RECOVERY_AREA\MES\archivelog\ARC_7A938AE1_1_975085062_5.LOG

使用通道 ORA_DISK_1

交叉校驗備份片段: 找到為 'EXPIRED'

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\D_MES_7NT1T9HG_1_20180502 RECID=224 STAMP=975087154

交叉校驗備份片段: 找到為 'EXPIRED'

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\D_MES_7OT1T9HG_1_20180502 RECID=225 STAMP=975087154

交叉校驗備份片段: 找到為 'EXPIRED'

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7QT1T9IE_1_20180502 RECID=226 STAMP=975087182

交叉校驗備份片段: 找到為 'EXPIRED'

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7PT1T9IE_1_20180502 RECID=227 STAMP=975087182

交叉校驗備份片段: 找到為 'EXPIRED'

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7RT1T9IF_1_20180502 RECID=228 STAMP=975087183

已交叉檢驗的 5 對象

RMAN> delete expired backup;

使用通道 ORA_DISK_1

備份片段列表

BP 關鍵字  BS 關鍵字  Pc# Cp# 狀態      設備類型段名稱

------- ------- --- --- ----------- ----------- ----------

224     224     1   1   EXPIRED     DISK        \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7NT1T9HG_1_20180502

225     225     1   1   EXPIRED     DISK        \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7OT1T9HG_1_20180502

226     226     1   1   EXPIRED     DISK        \\VM-CATDB\E\RMAN_BAK\MES\A_MES_7QT1T9IE_1_20180502

227     227     1   1   EXPIRED     DISK        \\VM-CATDB\E\RMAN_BAK\MES\A_MES_7PT1T9IE_1_20180502

228     228     1   1   EXPIRED     DISK        \\VM-CATDB\E\RMAN_BAK\MES\A_MES_7RT1T9IF_1_20180502

是否確定要刪除以上對象 (輸入 YES 或 NO)? y

已刪除備份片段

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\D_MES_7NT1T9HG_1_20180502 RECID=224 STAMP=975087154

已刪除備份片段

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\D_MES_7OT1T9HG_1_20180502 RECID=225 STAMP=975087154

已刪除備份片段

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7QT1T9IE_1_20180502 RECID=226 STAMP=975087182

已刪除備份片段

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7PT1T9IE_1_20180502 RECID=227 STAMP=975087182

已刪除備份片段

備份片段句柄=\\VM-CATDB\E\RMAN_BAK\MES\A_MES_7RT1T9IF_1_20180502 RECID=228 STAMP=975087183

5 EXPIRED 對象已刪除

RMAN> list backup;

說明與資料檔案庫中的任何備份都不匹配

現在再把剛才備份的路徑改回,表示備份已經拿來,然后重新編目和注冊備份,讓RMAN知道備份的存在

RMAN> catalog start with '\\vm-catdb\e\rman_bak\mes';

搜索與樣式 \\vm-catdb\e\rman_bak\mes 匹配的所有文件

數據庫未知文件的列表

=====================================

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7PT1T9IE_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7QT1T9IE_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7RT1T9IF_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\control_bak\C-2056489697-20180502-06

文件名: \\VM-CATDB\E\RMAN_BAK\mes\D_MES_7NT1T9HG_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\D_MES_7OT1T9HG_1_20180502

是否確實要將上述文件列入目錄 (輸入 YES 或 NO)? y

正在編制文件目錄...

目錄編制完畢

已列入目錄的文件的列表

=======================

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7PT1T9IE_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7QT1T9IE_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\A_MES_7RT1T9IF_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\control_bak\C-2056489697-20180502-06

文件名: \\VM-CATDB\E\RMAN_BAK\mes\D_MES_7NT1T9HG_1_20180502

文件名: \\VM-CATDB\E\RMAN_BAK\mes\D_MES_7OT1T9HG_1_20180502

4、執行數據庫還原

RMAN> restore database;

啟動 restore 于 2018-05-02 23:05:55

使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在開始還原數據文件備份集

通道 ORA_DISK_1: 正在指定從備份集還原的數據文件

通道 ORA_DISK_1: 將數據文件 00001 還原到 D:\ORADATA\MES\SYSTEM01.DBF

通道 ORA_DISK_1: 將數據文件 00003 還原到 D:\ORADATA\MES\UNDOTBS01.DBF

通道 ORA_DISK_1: 將數據文件 00004 還原到 D:\ORADATA\MES\USERS01.DBF

通道 ORA_DISK_1: 將數據文件 00006 還原到 D:\ORADATA\MES\CMES01.DBF

通道 ORA_DISK_1: 將數據文件 00008 還原到 D:\ORADATA\MES\HMES01.DBF

通道 ORA_DISK_1: 正在讀取備份片段 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7OT1T9HG_1_20180502

通道 ORA_DISK_1: 段句柄 = \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7OT1T9HG_1_20180502 標記 = TAG20180502T173232

通道 ORA_DISK_1: 已還原備份片段 1

通道 ORA_DISK_1: 還原完成, 用時: 00:00:36

通道 ORA_DISK_1: 正在開始還原數據文件備份集

通道 ORA_DISK_1: 正在指定從備份集還原的數據文件

通道 ORA_DISK_1: 將數據文件 00002 還原到 D:\ORADATA\MES\SYSAUX01.DBF

通道 ORA_DISK_1: 將數據文件 00005 還原到 D:\ORADATA\MES\EXAMPLE01.DBF

通道 ORA_DISK_1: 將數據文件 00007 還原到 D:\ORADATA\MES\RMES01.DBF

通道 ORA_DISK_1: 將數據文件 00009 還原到 D:\ORADATA\MES\INDX01.DBF

通道 ORA_DISK_1: 將數據文件 00010 還原到 D:\ORADATA\MES\FDA01.DBF

通道 ORA_DISK_1: 正在讀取備份片段 \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7NT1T9HG_1_20180502

通道 ORA_DISK_1: 段句柄 = \\VM-CATDB\E\RMAN_BAK\MES\D_MES_7NT1T9HG_1_20180502 標記 = TAG20180502T173232

通道 ORA_DISK_1: 已還原備份片段 1

通道 ORA_DISK_1: 還原完成, 用時: 00:00:26

完成 restore 于 2018-05-02 23:06:57

5、為了確保數據庫的完全恢復,可能還需要利用歸檔日志,因此需將歸檔日志編目。

首先查看RMAN存儲庫中關于歸檔日志的記錄,這里顯示沒有記錄

RMAN> list archivelog all;

說明與資料檔案庫中的任何歸檔日志都不匹配

重新編目

RMAN> catalog start with 'E:\fast_recovery_area\mes\archivelog';

搜索與樣式 E:\fast_recovery_area\mes\archivelog 匹配的所有文件

數據庫未知文件的列表

=====================================

文件名: E:\FAST_RECOVERY_AREA\MES\archivelog\ARC_7A938AE1_1_975085062_5.LOG

是否確實要將上述文件列入目錄 (輸入 YES 或 NO)? y

正在編制文件目錄...

目錄編制完畢

已列入目錄的文件的列表

=======================

文件名: E:\FAST_RECOVERY_AREA\MES\archivelog\ARC_7A938AE1_1_975085062_5.LOG

RMAN> list archivelog all;

db_unique_name 為 MES 的數據庫的歸檔日志副本列表

=====================================================================

關鍵字     線程序列     S 時間下限

------- ---- ------- - -------------------

6       1    5       A 2018-05-02 17:32:59

        名稱: E:\FAST_RECOVERY_AREA\MES\ARCHIVELOG\ARC_7A938AE1_1_975085062_5.LOG

6、執行數據庫的完全恢復

RMAN> recover database;

啟動 recover 于 2018-05-02 23:22:30

使用通道 ORA_DISK_1

正在開始介質的恢復

線程 1 序列 4 的歸檔日志已作為文件 D:\ORADATA\MES\REDO01.LOG 存在于磁盤上

線程 1 序列 5 的歸檔日志已作為文件 D:\ORADATA\MES\REDO02.LOG 存在于磁盤上

線程 1 序列 6 的歸檔日志已作為文件 D:\ORADATA\MES\REDO03.LOG 存在于磁盤上

歸檔日志文件名=D:\ORADATA\MES\REDO01.LOG 線程=1 序列=4

歸檔日志文件名=D:\ORADATA\MES\REDO02.LOG 線程=1 序列=5

歸檔日志文件名=D:\ORADATA\MES\REDO03.LOG 線程=1 序列=6

介質恢復完成, 用時: 00:00:01

完成 recover 于 2018-05-02 23:22:32

7、打開數據庫并重置日志序列

RMAN> alter database open resetlogs;

數據庫已打開

至此,完成了mes數據庫破壞后的完全恢復。

8、實驗完畢后開啟恢復目錄數據庫,之后應在恢復目錄機器上重新注冊數據庫的新化身

C:\Users\Administrator>rman target sys/mesHz2@mes catalog rman/rman

恢復管理器: Release 11.2.0.4.0 - Production on 星期三 5月 2 23:24:54 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

已連接到目標數據庫: MES (DBID=2056489697)

連接到恢復目錄數據庫

RMAN> unregister database;

數據庫名為 "MES" 且 DBID 為 2056489697

是否確實要注銷數據庫 (輸入 YES 或 NO)? y

已從恢復目錄中注銷數據庫

RMAN> register database;

注冊在恢復目錄中的數據庫

正在啟動恢復目錄的全部重新同步

完成全部重新同步

9、由于生成了數據庫新的化身,以前所做的備份和歸檔都已不再有用,可以用RMAN命令將其刪除和注銷,文件不再保留,新的數據庫應當盡快重做備份。

感謝各位的閱讀!關于“如何通過搭建恢復目錄實現RMAN異地備份和恢復”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巩义市| 蚌埠市| 收藏| 东港市| 万山特区| 商南县| 石嘴山市| 海晏县| 咸丰县| 宝清县| 陕西省| 桐乡市| 罗平县| 东丽区| 富顺县| 沈阳市| 武穴市| 南投县| 海伦市| 永康市| 横峰县| 永修县| 临沭县| 犍为县| 张家界市| 屯昌县| 五大连池市| 铜梁县| 乐陵市| 襄樊市| 南康市| 如东县| 肥乡县| 武山县| 宁陵县| 于都县| 且末县| 建水县| 左权县| 庆阳市| 金平|