当前位置:  数据库>oracle

Oracle入门教程:RMAN备份归档日志的注意要点

    来源: 互联网  发布时间:2017-04-13

    本文导语: 今天在公司的数据库上看到这样的一个RMAN备份脚本: run { allocate channel c1 type disk maxpiecesize = 2G; allocate channel c2 type disk maxpiecesize = 2G; backup incremental level 1 database format '/backup/osedb_osedb01/data/%d_DF_%T_%s_%p.bak' plus archivelog  format '/ba...

今天在公司的数据库上看到这样的一个RMAN备份脚本:

run {
 allocate channel c1 type disk maxpiecesize = 2G;
 allocate channel c2 type disk maxpiecesize = 2G;
 backup incremental level 1 database format '/backup/osedb_osedb01/data/%d_DF_%T_%s_%p.bak'
 plus archivelog  format '/backup/osedb_osedb01/arch/%d_AF_%T_%s_%p.log'  release channel c1;
 release channel c2;
}





注意上面红色字体部分。我一看,感觉好像有些问题,于是在测试机上做了一下试验,发现果然是有错误的。下面进行详细说明。

1. 首先,上面的脚本是错误的,应该将上面红色字体的第一个"all"去掉即可。

2. delete input和delete all input的区别

(1)如果归档日志目录只是一个时,即归档时只有一份归档日志时,上面的两种写法是没有区别的;

(2)如果归档日志目录有多个时,即归档时保存有多份归档日志时,那么:

delete input当备份了归档日志后,会删除第一个归档目录(如:log_archive_dest_1)下的所有归档日志;

delete all input则在备份了归档日志后,所有所有log_archive_dest_n中的备份的archivelog都会被删除。

3. 那么,至于什么时候可以使用呢?

在1,2小点中提到的写法都是在备份数据库时顺便备份归档日志的写法,如:

而使用all delete all input是直接专门对数据库归档日志进行备份时使用,如:

 

附加:

当在备份归档日志时,如果有些归档日志被删除了或是丢失了,那么在备份过程就就会报错RMAN-06059:

假如现数据库有如下的归档日志:

RMAN> list archivelog all;

List of Archived Log Copies

Key    Thrd Seq  S    Low Time   Name

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

59       1      35      A   16-MAY-11  /u01/backup/arch1/1_35_750725106.dbf

60       1      35      A   16-MAY-11  /u01/backup/arch2/1_35_750725106.dbf

61       1      36      A   16-MAY-11  /u01/backup/arch1/1_36_750725106.dbf

62       1      36      A   16-MAY-11  /u01/backup/arch2/1_36_750725106.dbf

现在手工在操作系统下用rm命令将36号归档日志文档删除,模拟36号归档日志丢失了,www.linuxidc.com那么在执行备份归档日志时将出现:

RMAN> backup tablespace app plus archivelog delete all input;

Starting backup at 16-MAY-11

current log archived

using channel ORA_DISK_1

archived log /u01/backup/arch1/1_36_750725106.dbf not found or out of sync with catalog

trying alternate file for archivelog thread 1, sequence 36

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of backup plus archivelog command at 05/16/2011 03:22:29

RMAN-06059: expected archived log not found, lost of archived log compromises recoverability

ORA-19625: error identifying file /u01/backup/arch2/1_36_750725106.dbf

ORA-27037: unable to obtain file status

Linux Error: 2: No such file or directory

Additional information: 3

这就是因为缺少了36号归档日志的原因,那么现在怎么处理呢?

解决办法:

RMAN> crosscheck archivelog all;

或者:RMAN> change archivelog all crosscheck;

再次执行备份操作即可。

然后需要在RMAN中进行清除操作:

RMAN> list archivelog all;

List of Archived Log Copies
Key     Thrd Seq     S Low Time  Name
------- ---- ------- - --------- ----
62      1    36      X 16-MAY-11 /u01/backup/arch2/1_36_750725106.dbf
61      1    36      X 16-MAY-11 /u01/backup/arch1/1_36_750725106.dbf



RMAN> delete archivelog 61,62;

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=141 devtype=DISK

List of Archived Log Copies
Key     Thrd Seq     S Low Time  Name
------- ---- ------- - --------- ----
61      1    36      X 16-MAY-11 /u01/backup/arch1/1_36_750725106.dbf
62      1    36      X 16-MAY-11 /u01/backup/arch2/1_36_750725106.dbf



Do you really want to delete the above objects (enter YES or NO)? y
deleted archive log
archive log filename=/u01/backup/arch1/1_36_750725106.dbf recid=61 stamp=751258131
deleted archive log
archive log filename=/u01/backup/arch2/1_36_750725106.dbf recid=62 stamp=751258131
Deleted 2 objects





    
 
 

您可能感兴趣的文章:

  • Oracle教程:浅析监听器安装/配置入门
  • 切换Oracle的归档模式以及非归档模式
  • oracle的归档模式 ORACLE数据库归档日志常用命令
  • 更改Oracle数据库的归档模式
  • 查看修改Oracle10G归档日志空间的限制
  • 关于Oracle将目标数据库设为归档模式应该注意的问题
  • Oracle 删除归档日志实例
  • oracle 如何关闭打开归档日志
  • Oracle数据库归档模式的切换
  • Linux下Oracle归档日志自动清理脚本代码(sh)
  • Oracle中归档模式的定义简述
  • Oracle10g自动归档设置
  • 更改Oracle数据库到归档模式
  • oracle日志操作模式(归档模式和非归档模式的利与弊)
  • Oracle 11G闪回数据归档新功能详述
  • win平台oracle rman备份和删除dg备库归档日志脚本
  • Oracle相关:Rman Crosscheck删除失效归档
  • Oracle切换为归档模式的步骤及问题解决
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何将Aix上的oracle 物理备份 然后再在linux 系统上还原oracle
  • Oracle数据库设置任务计划备份一周的备份记录
  • Oracle数据库备份和恢复工具 RMan
  • oracle10g 数据备份与导入
  • aix下自动备份oracle 的输出日志问题,急!!
  • hp unix下备份oracle表的问题
  • linux小白提问linux备份oracle数据库的问题
  • oracle不能自动备份
  • Oracle数据库逻辑备份的SH文件
  • Linux环境中Oracle数据导入与导出备份操作
  • oracle数据库备份急???????????
  • oracle定时备份压缩的实现步骤
  • Unix系统下如何将oracle数据库备份
  • 详解如何应用改变跟踪技术加速Oracle递增备份
  • Oracle中备份表的简单sql命令语句
  • 实战Oracle数据库备份与恢复
  • Linux下实现自动备份Oracle数据库
  • oracle备份恢复的具体方法
  • 利用windows任务计划实现oracle的定期备份
  • Oracle11g备份和恢复功能的提高
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3