TXT

ORA-16146 standby destination control file enqueue unavailable2

By Lloyd Burns,2014-09-10 17:03
10 views 0
ORA-16146 standby destination control file enqueue unavailable2

ORA-16146: standby destination control file enqueue unavailable2

生产库出现

    Tue Aug 17 18:24:58 2010

    PING[ARC1]: Error 16146 when pinging standby PTMSTD.

    Tue Aug 17 18:36:39 2010

    Thread 1 advanced to log sequence 7694 (LGWR switch)

    Current log# 7 seq# 7694 mem# 0: +DATA/ptmpri/onlinelog/group_7.263.694005303 Current log# 7 seq# 7694 mem# 1:

    +FLASH_RECOVERY_AREA/ptmpri/onlinelog/group_7.263.694005305

查看error message

    ORA-16146: standby destination control file enqueue unavailable

    Cause: The target standby destination control file is currently unavailable to the Remote File Server (RFS) process. This indicates that the target destination is the primary database itself.

    Action: Check for and eliminate the standby destination archive log parameter in question.

下面是oracle support给的解释?

    ORA-16146 is usually not a serious error, and occaisonally a PING process from the primary can get this error when the PING call is being processed on the standby. The PING callback on the standby side is executed in an RFS process. The RFS process needs to get hold of a c/f enqueue to perform some processing. If it does not get the c/f enqueue in a small amount of time it gives up, and returns this error to the PING archiver process at the primary, who then logs the error in the alert log.

    This does not cause any disruption to the primary or the standby. It is possible that updates to datafiles, which are done under c/f enqueue, can take a long time, and as such there could be periods where the c/f enqueue is under contention. During such periods, a PING request being processed by an RFS can get c/f enqueue unavailable, this is then propogated to the PING archiver process.

大概的意思就是说这不是一个严重的错误;原因是因为主库对备库发出一个PING进程的时候

    没有获取到备库RFS的回复。

主库归档日志

    15:34:55 sys@PTMPRI> select thread#,max(sequence#) from gv$archived_log group by thread# order by thread#;

THREAD# MAX(SEQUENCE#)

    ---------- -------------- 1 7704

    2 6525

    3 6655

    4 5773

已用时间: 00: 00: 00.75

备库归档日志

    15:36:06 idle> select thread#,applied,max(sequence#) from gv$archived_log group by

    thread#,applied;

    THREAD# APP MAX(SEQUENCE#) ---------- --- -------------- 1 YES 7704

    2 YES 6525

    3 YES 6655

    4 YES 5773

Elapsed: 00:00:00.31

    由于主库日志已归档而且备库日志已应用;所以这个错误可以忽略。

Report this document

For any questions or suggestions please email
cust-service@docsford.com