200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 非归档模式下重做日志覆盖后的rman恢复

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

时间:2023-10-07 11:45:33

相关推荐

非归档模式下重做日志覆盖后的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 DNAMELOC

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

90 tecguangzhou

70 tecbeijing

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALESCHICAGO

40 OPERATIONS BOSTON

60 tecjinan

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/ 18:50:23 上) 失败

ORA-19504: 无法创建文件"C:\ORADATA\RMANBAK\ORA0528_816634186.BAK"

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

OSD-04010: 指定了 <create> 选项, 但文件已经存在

通道 ORA_DISK_2 已禁用,将在另一个通道上运行该通道上失败的作业

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

段句柄=C:\ORADATA\RMANBAK\ORA0528_816634202.BAK标记=TAG0528T184945 注释

=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\ORA0528_816634212.BAK标记=TAG0528T184945 注释

=NONE

通道 ORA_DISK_4: 备份集已完成, 经过时间:00:00:15

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

段句柄=C:\ORADATA\RMANBAK\ORA0528_816634186.BAK标记=TAG0528T184945 注释

=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:56

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

段句柄=C:\ORADATA\RMANBAK\ORA0528_816634223.BAK标记=TAG0528T184945 注释

=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\_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 Buffers5259264 字节

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\ORA0528_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\ORA0528_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\ORA0528_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\ORA0528_816634223.BAK

通道 ORA_DISK_1: 段句柄= C:\ORADATA\RMANBAK\ORA0528_816634202.BAK 标记= TA

G0528T184945

通道 ORA_DISK_1: 已还原备份片段 1

通道 ORA_DISK_1: 还原完成,用时: 00:01:21

通道 ORA_DISK_2: 段句柄= C:\ORADATA\RMANBAK\ORA0528_816634212.BAK 标记= TA

G0528T184945

通道 ORA_DISK_2: 已还原备份片段 1

通道 ORA_DISK_2: 还原完成,用时: 00:01:39

通道 ORA_DISK_3: 段句柄= C:\ORADATA\RMANBAK\ORA0528_816634186.BAK 标记= TA

G0528T184945

通道 ORA_DISK_3: 已还原备份片段 1

通道 ORA_DISK_3: 还原完成,用时: 00:01:54

通道 ORA_DISK_4: 段句柄= C:\ORADATA\RMANBAK\ORA0528_816634223.BAK 标记= TA

G0528T184945

通道 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 DNAMELOC

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

90 tecguangzhou

70 tecbeijing

10 ACCOUNTING NEW YORK

20 RESEARCH DALLAS

30 SALESCHICAGO

40 OPERATIONS BOSTON

60 tecjinan

80 Development xianggang

已选择8行。

有上述结果可发现:非归档模式下,3次切换日志之后,删除的表依然存在,说明重做日志被覆盖之后,数据只能恢复到最近的一次完全备份。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。