千家信息网

Oracle使用备份文件集恢复归档日志

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,在一个DG环境中,由于网络带宽不足的原因,暂时是使用手动同步的,也就是每天从主数据库中拷贝归档日志文件到备数据库中进行应用,但是今天发现缺失了几个归档日志文件,而且主库中的归档日志文件已经被自动删除了
千家信息网最后更新 2025年02月05日Oracle使用备份文件集恢复归档日志

在一个DG环境中,由于网络带宽不足的原因,暂时是使用手动同步的,也就是每天从主数据库中拷贝归档日志文件到备数据库中进行应用,但是今天发现缺失了几个归档日志文件,而且主库中的归档日志文件已经被自动删除了,最后万幸的发现在某个服务器上还保存15天的备份文件,真是大喜欢,突然想起来盖老板说过一句话"备份重于一切"。

于是我首先使用 catalog start with命令加载归档日志文件集,虽然加载成功了,但是备库无法使用其中的内容进行数据恢复,经过网上搜索一翻发现Oracle还有个 restore archivelog 的命令进行恢复归档日志,又是惊喜并且感叹Oracle真是一个成熟的商业软件,客户想要的东西可以都可以满足,最后我的问题也都解决了,在这里简单的记录一下这个命令的用法,内容是来源于网络


  • 恢复全部归档日志文件

RMAN> restore archivelog all


  • 只恢复 5到8这四个归档日志文件

RMAN> restore archivelog from logseq 5 until logseq 8;


  • 恢复从第5个归档日志起

RMAN> restore archivelog from logseq 5;


  • 恢复7天内的归档日志

RMAN> restore archivelog from time 'sysdate-7' ;


  • sequence between 写法

RMAN> restore archivelog sequence between 1 and 3;


  • 恢复到哪个日志文件为止

RMAN> restore archivelog low logseq 5;


  • 到第5个日志为止

RMAN> restore archivelog high logseq 5;


  • 如果想改变恢复到另外路径下 则可用下面语句


    RMAN> run{

    set archivelog destination to 'd:\backup'

    allocate channel ci type disk; set archivelog destination to 'd:\backup' ; restore archivelog all ; release channel ci; }







0