日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

非归档模式下重做日志覆盖后的rman恢复

發布時間:2025/3/19 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 非归档模式下重做日志覆盖后的rman恢复 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

非歸檔模式下重做日志覆蓋后的rman恢復

實驗原理:在非歸檔模式下,數據庫的重做日志不會寫入歸檔日志中,對數據庫的恢復只能依靠3個聯機重做日志。當第一個重做日志滿了,就切換第二個重做日志中,以此類推,3個文件循環使用。我們在添加表信息之后備份數據庫。假設目前正在使用的是1號重做日志,那么切換3次日志之后重做日志已經重新切換到1號。此后開始覆蓋以前的重做日志。這時我們刪除添加的表,再刪除所有數據文件,然后再恢復,發現新添加的表還存在。實驗說明:如果在數據庫備份之后的重做日志內容已經被覆蓋,那么當數據文件出現介質失敗時,只能恢復到過去的完全備份點。

1.確保歸檔模式為非歸檔。

SQL> archive log list;

數據庫日志模式非存檔模式

自動存檔啟用

存檔終點 ? ? ? ? ? c:\oracle\orcl\arch

最早的聯機日志序列 ? ? 5

當前日志序列 ? ? ? ? ? 7

如若已修改為歸檔模式,需要修改過來。

SQL> alter databasenoarchivelog;

數據庫已更改。

2.首先通過向test用戶下創建新的表。

SQL> create table tbl_test as select *from testtable; ?

SQL> select * from tbl_test;


? DEPTNO DNAME ? ? ? ? ?LOC

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

? ? ? 90 tec ? ? ? ? ? ?guangzhou

? ? ? 70 tec ? ? ? ? ? ?beijing

? ? ? 10 ACCOUNTING ? ? NEW YORK

? ? ? 20 RESEARCH ? ? ? DALLAS

? ? ? 30 SALES ? ? ? ? ?CHICAGO

? ? ? 40 OPERATIONS ? ? BOSTON

? ? ? 60 tec ? ? ? ? ? ?jinan

? ? ? 80 Development ? ?xianggang

已選擇8行。

3.使用rman備份數據庫。

RMAN> backup databaseformat "c:\oradata\rmanbak\ora%T_%t.bak" filesperset 5;


啟動 backup 28-5 -13

使用通道 ORA_DISK_1

使用通道 ORA_DISK_2

使用通道 ORA_DISK_3

使用通道 ORA_DISK_4

通道 ORA_DISK_1: 正在啟動全部數據文件備份集

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

輸入數據文件: 文件號=00001名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF

通道 ORA_DISK_1: 正在啟動段1 28-5 -13

通道 ORA_DISK_2: 正在啟動全部數據文件備份集

通道 ORA_DISK_2: 正在指定備份集內的數據文件

輸入數據文件: 文件號=00002名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF

輸入數據文件: 文件號=00003名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF

輸入數據文件: 文件號=00004名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF

通道 ORA_DISK_2: 正在啟動段1 28-5 -13

通道 ORA_DISK_3: 正在啟動全部數據文件備份集

通道 ORA_DISK_3: 正在指定備份集內的數據文件

輸入數據文件: 文件號=00006名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM02.DBF

輸入數據文件: 文件號=00008名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS02.DBF

輸入數據文件: 文件號=00010名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE02.DBF

通道 ORA_DISK_3: 正在啟動段1 28-5 -13

通道 ORA_DISK_4: 正在啟動全部數據文件備份集

通道 ORA_DISK_4: 正在指定備份集內的數據文件

輸入數據文件: 文件號=00007名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX02.DBF

輸入數據文件: 文件號=00009名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS02.DBF

輸入數據文件: 文件號=00005名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF

通道 ORA_DISK_4: 正在啟動段1 28-5 -13

RMAN-03009: backup 命令 (ORA_DISK_2 通道上, 05/28/2013 18:50:23 ) 失敗

ORA-19504: 無法創建文件"C:\ORADATA\RMANBAK\ORA20130528_816634186.BAK"

ORA-27038: 所創建的文件已存在

OSD-04010: 指定了 <create> 選項, 但文件已經存在

通道 ORA_DISK_2 已禁用,將在另一個通道上運行該通道上失敗的作業

通道 ORA_DISK_3: 已完成段1 28-5 -13

段句柄=C:\ORADATA\RMANBAK\ORA20130528_816634202.BAK標記=TAG20130528T184945 注釋

=NONE

通道 ORA_DISK_3: 備份集已完成, 經過時間:00:00:11

通道 ORA_DISK_3: 正在啟動全部數據文件備份集

通道 ORA_DISK_3: 正在指定備份集內的數據文件

輸入數據文件: 文件號=00002名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF

輸入數據文件: 文件號=00003名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF

輸入數據文件: 文件號=00004名稱=C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF

通道 ORA_DISK_3: 正在啟動段1 28-5 -13

通道 ORA_DISK_4: 已完成段1 28-5 -13

段句柄=C:\ORADATA\RMANBAK\ORA20130528_816634212.BAK標記=TAG20130528T184945 注釋

=NONE

通道 ORA_DISK_4: 備份集已完成, 經過時間:00:00:15

通道 ORA_DISK_1: 已完成段1 28-5 -13

段句柄=C:\ORADATA\RMANBAK\ORA20130528_816634186.BAK標記=TAG20130528T184945 注釋

=NONE

通道 ORA_DISK_1: 備份集已完成, 經過時間:00:00:56

通道 ORA_DISK_3: 已完成段1 28-5 -13

段句柄=C:\ORADATA\RMANBAK\ORA20130528_816634223.BAK標記=TAG20130528T184945 注釋

=NONE

通道 ORA_DISK_3: 備份集已完成, 經過時間:00:00:35

完成 backup 28-5 -13


啟動 Control File and SPFILE Autobackup 28-5-13

handle=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\AUTOBACKUP\2013_05_28\O1

_MF_S_816634122_8T930ZVN_.BKPcomment=NONE

完成 Control File and SPFILE Autobackup 28-5-13



4.進行3次日志切換。

SQL> alter system switchlogfile;

系統已更改。

SQL> alter system switchlogfile;

系統已更改。

SQL> alter system switchlogfile;

系統已更改。

5.刪除表信息。

SQL> truncate table tbl_test;

表被截斷。

6.刪除所有數據文件之后恢復數據庫。

RMAN> startup mount;

Oracle 實例已啟動

數據庫已裝載

系統全局區域總計 ? ?778387456 字節

Fixed Size ? ? ? ? ? ? ? ? ? ? 1374808 字節

Variable Size ? ? ? ? ? ? ? ?260048296 字節

Database Buffers ? ? ? ? ? ? 511705088 字節

Redo Buffers ? ? ? ? ? ? ? ? ? 5259264 字節

RMAN> restore database;

啟動 restore 28-5 -13

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

分配的通道: ORA_DISK_1

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

分配的通道: ORA_DISK_2

通道 ORA_DISK_2: SID=19 設備類型=DISK

分配的通道: ORA_DISK_3

通道 ORA_DISK_3: SID=21 設備類型=DISK

分配的通道: ORA_DISK_4

通道 ORA_DISK_4: SID=22 設備類型=DISK


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

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

通道 ORA_DISK_1: 將數據文件00006 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTE

M02.DBF

通道 ORA_DISK_1: 將數據文件00008 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOT

BS02.DBF

通道 ORA_DISK_1: 將數據文件00010 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMP

LE02.DBF

通道 ORA_DISK_1: 正在讀取備份片段 C:\ORADATA\RMANBAK\ORA20130528_816634202.BAK

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

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

通道 ORA_DISK_2: 將數據文件00005 還原到 C:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMP

LE01.DBF

通道 ORA_DISK_2: 將數據文件00007 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAU

X02.DBF

通道 ORA_DISK_2: 將數據文件00009 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS

02.DBF

通道 ORA_DISK_2: 正在讀取備份片段 C:\ORADATA\RMANBAK\ORA20130528_816634212.BAK

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

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

通道 ORA_DISK_3: 將數據文件00001 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTE

M01.DBF

通道 ORA_DISK_3: 正在讀取備份片段 C:\ORADATA\RMANBAK\ORA20130528_816634186.BAK

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

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

通道 ORA_DISK_4: 將數據文件00002 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAU

X01.DBF

通道 ORA_DISK_4: 將數據文件00003 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOT

BS01.DBF

通道 ORA_DISK_4: 將數據文件00004 還原到C:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS

01.DBF

通道ORA_DISK_4: 正在讀取備份片段 C:\ORADATA\RMANBAK\ORA20130528_816634223.BAK

通道 ORA_DISK_1: 段句柄= C:\ORADATA\RMANBAK\ORA20130528_816634202.BAK 標記= TA

G20130528T184945

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

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

通道 ORA_DISK_2: 段句柄= C:\ORADATA\RMANBAK\ORA20130528_816634212.BAK 標記= TA

G20130528T184945

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

通道 ORA_DISK_2: 還原完成,用時: 00:01:39

通道 ORA_DISK_3: 段句柄= C:\ORADATA\RMANBAK\ORA20130528_816634186.BAK 標記= TA

G20130528T184945

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

通道 ORA_DISK_3: 還原完成,用時: 00:01:54

通道 ORA_DISK_4: 段句柄= C:\ORADATA\RMANBAK\ORA20130528_816634223.BAK 標記= TA

G20130528T184945

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

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

完成 restore 28-5 -13

RMAN> recover database;

啟動 recover 28-5 -13

使用通道 ORA_DISK_1

使用通道 ORA_DISK_2

使用通道 ORA_DISK_3

使用通道 ORA_DISK_4

正在開始介質的恢復


線程 1 序列8 的歸檔日志已作為文件C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG

存在于磁盤上

線程 1 序列9 的歸檔日志已作為文件C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG

存在于磁盤上

線程 1 序列10 的歸檔日志已作為文件C:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG

存在于磁盤上

RMAN-08187: 警告: 完成到SCN 2477744 的介質恢復

完成 recover 28-5-13


7.resetlogs啟動數據庫。

SQL> alter databaseopen resetlog

SQL> conn test/szc12345

已連接。

SQL> select * from tbl_test;


? DEPTNO DNAME ? ? ? ? ?LOC

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

? ? ? ?90 tec ? ? ? ? ? ?guangzhou

? ? ? ?70 tec ? ? ? ? ? ?beijing

? ? ? ?10 ACCOUNTING ? ? NEW YORK

? ? ? ?20 RESEARCH ? ? ? DALLAS

? ? ? ?30 SALES ? ? ? ? ?CHICAGO

? ? ? ?40 OPERATIONS ? ? BOSTON

? ? ? ?60 tec ? ? ? ? ? ?jinan

? ? ? ?80 Development ? ?xianggang


已選擇8行。

有上述結果可發現:非歸檔模式下,3次切換日志之后,刪除的表依然存在,說明重做日志被覆蓋之后,數據只能恢復到最近的一次完全備份。


轉載于:https://blog.51cto.com/greetwin/1212424

總結

以上是生活随笔為你收集整理的非归档模式下重做日志覆盖后的rman恢复的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。