暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

oracle ADG备库异常关闭(ERROR 4021)

ORACLE DBA LIFE 2021-04-21
2595

ADG备库异常关闭

terminating the instance due to error 4021

分析处理过程

1、检查ORACLE日志,出现了ORA-04021、LGWR中止实例的报错

System State dumped to trace file u01/app/oracle/diag/rdbms/hydeepdg01/HYDEE/trace/HYDEE_ora_78884.trc

2018-09-28 10:28:13.883000 +08:00

Errors in file u01/app/oracle/diag/rdbms/hydeepdg01/HYDEE/trace/HYDEE_ora_78884.trc:

2018-09-28 10:30:16.372000 +08:00

Errors in file /u01/app/oracle/diag/rdbms/hydeepdg01/HYDEE/trace/HYDEE_lgwr_73182.trc:

ORA-04021: timeout occurred while waiting to lock object

LGWR (ospid: 73182): terminating the instance due to error 4021

opiodr aborting process unknown ospid (74264) as a result of ORA-1092

System state dump requested by (instance=1, osid=73182 (LGWR)), summary=[abnormal instance termination].

System State dumped to trace file /u01/app/oracle/diag/rdbms/hydeepdg01/HYDEE/trace/HYDEE_diag_73137_20180928103017.trc

2018-09-28 10:30:17.897000 +08:00

Dumping diagnostic data in directory=[cdmp_20180928103017], requested by (instance=1, osid=73182 (LGWR)), summary=[abnormal instance termination].

Instance terminated by LGWR, pid = 73182


2、检查对应的TRC文件,出现了library cache lock的等待事件(在Oracle数据库中,如果运行一个SQL语句,首先需要将它们加载到Shared Pool的Library Cache中,而这些对象也称之为Library Cache Object。执行或者修改这些Library Cache Object时,这个LibraryCache Object会获得一个Library Cache Lock。Library Cache Lock是一种DDL锁,是Parse锁,维持着对象间的依赖关系。)

[oracle@xfrdbserver02 HYDEE]$ more  /u01/app/oracle/diag/rdbms/hydeepdg01/HYDEE/trace/HYDEE_ora_78884.trc

...

 service name: SYS$BACKGROUND

    Current Wait Stack:

     0: waiting for 'library cache lock'

        handle address=0x25bff6e5f0, lock address=0x25bff9b5a8, 100*mode+namespace=0x1004a0003

        wait_id=5270 seq_num=5271 snap_id=1

        wait times: snap=12 min 48 sec, exc=12 min 48 sec, total=12 min 48 sec

        wait times: max=15 min 0 sec, heur=12 min 48 sec

        wait counts: calls=257 os=257

        in_wait=1 iflags=0x15a2

    There is at least one session blocking this session.

      Dumping 1 direct blocker(s):

        inst: 1, sid: 1659, ser: 3

      Dumping final blocker:

        inst: 1, sid: 1659, ser: 3

    There are 2 sessions blocked by this session.

    Dumping one waiter:

      inst: 1, sid: 1623, ser: 3

      wait event: 'library cache lock'

        p1: 'handle address'=0x25bff6e5f0

        p2: 'lock address'=0x255fc6b350

        p3: '100*mode+namespace'=0x1004a0002

      row_wait_obj#: 101081, block#: 157451, row#: 0, file# 8

      min_blocked_time: 485 secs, waiter_cache_ver: 580

    Wait State:

      fixed_waits=0 flags=0x22 boundary=(nil)/-1


...


3、从MOS(文档 ID 2177473.1)了解到,Bug 18242740与其非常吻合,从trc文件看到library cache lock的等待事件,LGWR 4021错误,等待锁对象超时。


解决方案


修改隐含参数,设置LGWR在退出并重试请求之前应等待的厘秒数

ALTER SYSTEM set  "_adg_parselock_timeout"=550 scope=both;

重启备库


好好学习,天天向上!


最后修改时间:2021-04-21 15:35:57
文章转载自ORACLE DBA LIFE,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论