这个问题最好帖下trace文件
以下是检查事项和处理办法
1 寻找归档文件
查看下
select * from v$archive_gap;
select inst_id,process,status,thread#,sequence#,block#,blocks from gv$managed_standby;
应该可以确定是否存在gap和当前的日志序号
如果存在序号大于2200文件,而你本地又没有2200文件,你需要从主库copy 2200文件到备库
至于你说的主库名字是thread_1_xxxx.xxxx.xxxxxxxx,这个序号的会可以通过数据库里面的sequence#查出
比如说在主库查询 select * from v$archived_log where sequence#='2200';找到具体路径
或者通过rman 里面的list archivelog sequence 2200;寻找
ps,如果你的主库也没有2200号归档文件,你也可以采用增量复制的方式来跳过该错误,恢复ADG。
2 copy,并且注册归档文件
因为你的以前的2200文件存在错误,需要手动删除文件,然后通过rman自带的CROSSCHECK命令
CROSSCHECK ARCHIVELOG sequence 2200; 然后通过 delete noprompt archivelog sequence 2200;删除系统记录信息
最后从主库拷贝2200文件,或许名字不一定是2200不过这个不影响,
注册 catalog start with '/arch' ;
3 最后执行应用日志命令