在dataguard上,使用rman连接catalog数据库进行备份。备份的时候,rman的日志报错如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Starting backup at 2014/04/23-10:02:02 archived log /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201410_9ofpggpg_.arc not found or out of sync with catalog skipping inaccessible file /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201410_9ofpggpg_.arc archived log /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201411_9ofqblsm_.arc not found or out of sync with catalog skipping inaccessible file /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201411_9ofqblsm_.arc archived log /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201412_9ofr6px7_.arc not found or out of sync with catalog skipping inaccessible file /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201412_9ofr6px7_.arc archived log /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201413_9ofs2v2m_.arc not found or out of sync with catalog skipping inaccessible file /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201413_9ofs2v2m_.arc RMAN-06061: WARNING: skipping archived log compromises recoverability released channel: ch00 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of backup command at 04/23/2014 10:02:23 RMAN-00600: internal error, arguments [13200] [] [] [] [] |
一开始,根据文档:341337.1,以为造成这个报错的原因是,注册在catalog库中的信息,在备份时被调用,由于备份是在dataguard库发起,在dataguard主机上去找对应的路径,就认为归档日志被人为的删除了。因此就报错inaccessible。
建议把生产和dataguard的FRA区设置同一目录。(或者用link指向同一目录),然后在rman中:
1 2 3 |
1. Resync catalog 2. Crosscheck archivelog all 3. Delete expired archivelog all; |
但是后来这样处理后还是继续报错。
最后发现,还是DB_UNIQUE_NAME的问题,由于没有配置DB_UNIQUE_NAME参数,导致连接到CATALOG库备份时,同一个日志文件会出现两个位置,引起备份异常:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
g3ah1040:mobprd > rman target / catalog catuser/catpwd@cattns Recovery Manager: Release 11.2.0.3.0 - Production on Wed Apr 23 10:31:53 2014 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: mobprd (DBID=3585792802) connected to recovery catalog database RMAN> list archivelog sequence 201410; <<<<<<由于dataguard没有配置DB_UNIQUE_NAME,同一个sequence#的归档在catalog库有2条记录。 List of Archived Log Copies for database with db_unique_name mobprd ===================================================================== Key Thrd Seq S Low Time ------- ---- ------- - --------- 539685219 1 201410 A 23-APR-14 Name: /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201410_9ofpggpg_.arc 539722379 1 201410 A 23-APR-14 Name: /aabb/qb/mobprd/log/fra/mobprd/archivelog/2014_04_23/o1_mf_1_201410_9ofpghkq_.arc |
题外话:关于DB_UNIQUE_NAME,一些公司为了减轻对生产的压力,选择备份在dataguard上进行,主库是rac+asm,备库是文件系统。在进行备份的恢复测试时,如果没有设置DB_UNIQUE_NAME,即使备份是文件系统上的文件,但是在restore的时候,会遇到restore去asm的路径的问题,但是这个asm的路径其实是不存在的。