数据库日志的恢复记录怎么写(如何从归档日志中恢复某张表的数据?)

发布日期:2023-04-14 22:46:13   浏览量 :328
发布日期:2023-04-14 22:46:13  
328

数据库日志的恢复记录怎么写(如何从归档日志中恢复某张表的数据?)

一、如何从归档日志中恢复某张表的数据?
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 \

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所在的表空间及数据文件

二、如何恢复系统日志?
  方法一:  如果是shift 删除的话,应该是无法找回了。如果是先进回收站再删除的话:  

1、单击“开始”——“运行”,然后输入regedit(打开注册表);  

2、在注册表编辑器中依次展开HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/ CurrentVersion/Explorer/DeskTop/NameSpace;  

3、右键单击“NameSpace”,选择“新建”——“项”,并把它命名为“645FFO40——5081——101B——9F08——00AA002F954E”;  4、再选中该项,把右边的“默认”的键值设为“回收站”,然后退出注册表;  5、然后重启电脑。打开“资源管理器”,看到没有,所有删除的文件或文件夹都在“回收站里面呢。  需要提示的是:用这种办法的前提是在删除文件或文件夹之后,没有进行过磁盘碎片整理,而且系统完好,任何时候的文件都可以找回来。  另外还可以通过系统还原点的方法来恢复。
关于我们
热门推荐
合作伙伴
免责声明:本站部分资讯来源于网络,如有侵权请及时联系客服,我们将尽快处理
云计算支持 反馈 订阅 枢纽云管理
回到顶部