使用Rman备份的归档日志恢复数据库时,需要先还原归档日志吗

使用Rman备份的归档日志恢复数据库时,需要先还原归档日志吗,第1张

oracle中可以利用 rman 还原归档日志到某个时间点:

1、理解还原与恢复

恢复(recover): 将备份之后的归档日志apply到数据库,也就根据归档日志的事务将数据库刷新到特定或最新状态(通常在还原之后 *** 作)。对于归

档日志中那些已提交的事务进行前滚,未提交的事务进行回滚。

还原归档日志: 还原归档日志是位于还原数据库与恢复数据库之间的这么一个过程。它会将那些在备份归档日志时使用delete [all] input方式

删除的归档日志还原到缺省的归档位置。在还原数据库之后,如果要做recover,也就是作介质恢复那就需要用到归档日志。那还原之后进行

recover需要的归档日志在哪里呢?归档日志在指定的归档路径那里,那到底有没有呢?如果有,还原时出现提示,归档日志已经在指定位置。

如果没有,但是备份的归档备份集那里有,也行啊。备份集里包含备份片,也就是打包了归档日志。那既然打包就要解包,解包到缺省路径

或指定路径。这就是还原归档日志。

--演示环境

--为了较好的模拟还原归档日志,我们仅仅使用了一个特定的数据文件进行copy方式备份,然后备份归档日志(备份时删除归档日志)

--接下来破坏数据文件,还原数据文件,还原归档日志文件,恢复日志文件。

[oracle@linux3 ~]$ cat /etc/issue

Enterprise Linux Enterprise Linux Server release 5.5 (Carthage)

Kernel \r on an \m

[oracle@linux3 ~]$ sqlplus -V

SQL*Plus: Release 11.2.0.1.0 Production

a、备份数据文件及归档日志

RMAN>list backup of archivelog all --->列出当前数据库已经备份的归档日志

specification does not match any backup in the repository

RMAN>list backupset --->列出当前数据库已存在的备份集

specification does not match any backup in the repository

SQL>select username,default_tablespace from dba_users where username='SCOTT' -->查看用户scott所在的表空间及数据文件

归档日志就是重做日志的备份, 而重做日志记录了数据的所有变化(DML,DDL或管理员对数据所作的结构性更改等),可以用户数据恢复,也可用户其他文件的恢复。而数据库备份,可以分为很多种,常用的exp及rman等,rman备份需要开启归档状态,也就是rman备份和归档日志是紧密相关的,rman备份可以备份控制文件,数据文件,重做日志文件等各类文件,比较全面。而exp逻辑备份,备份的是数据文件中的数据。区别就是exp只能恢复数据库的数据,归档日志可以恢复数据及其他文件(使用rman备份)。归档日志需要和rman备份一起使用,不能单独拿出来与数据库备份做比较,这样没有什么意义。希望可以帮到你!使用rman 全备份进行恢复时一定要有归档日志吗


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6760941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存