记一次Oracle DG备库实例宕分析

一、问题现象

同事反馈国外点在国内的XXX备库实例宕,尝试将该实例重启,结果重启报如下错误,未能正常启动该数据库。

Standby crash recovery failed to bring standby database to a consistent
point because needed redo hasn't arrived yet.
MRP: Wait timeout: thread 1 sequence# 0
Errors with log +DG/xxxx/archivelog/2021_12_29/thread_2_seq_24193.3766.1092589235
Standby Crash Recovery aborted due to error 16016.
Errors in file /u01/app/oracle/diag/rdbms/xxxx/xxxx/trace/xxxx_ora_67164.trc:
ORA-16016: archived log for thread 1 sequence# 22789 unavailable
Recovery interrupted!
Some recovered datafiles maybe left media fuzzy
Media recovery may continue but open resetlogs may fail
Completed Standby Crash Recovery.
Errors in file /u01/app/oracle/diag/rdbms/xxxx/xxxx/trace/xxxx_ora_67164.trc:
ORA-10458: standby database requires recovery
ORA-01196: file 1 is inconsistent due to a failed media recovery session
ORA-01110: data file 1: '+DG/xxxx/datafile/system.419.941189591'
ORA-10458 signalled during: ALTER DATABASE OPEN...

帮同事看了下问题,经过多次尝试,最终将数据库重新open,并正常接收主库传来的日志,数据库同步正常。

二、问题分析

问题看似解决了,其实只是做了一半,就是为什么这个实例会宕,另外就是这个数据库之前也配置了告警,为什么本次没有发出告警,要分析下原因,避免下次再重新改情况。

该数据库是国外点在国内的一个备库,和主库实时同步,数据库版本是Oracle 11.2.0.4 ,该数据库服务器上共部署了两个实例,而本次是只宕了其中一个实例,另一个实例正常。

首先查看了下问题发生时段的alert日志,在日志里看到了在数据库发生故障时所报的日志信息:

Errors in file /u01/app/oracle/diag/rdbms/xxxx/xxxx/trace/xxxx_lgwr_45171.trc:
ORA-04021: timeout occurred while waiting to lock object
LGWR (ospid: 45171): terminating the instance due to error 4021
Wed Dec 29 17:20:02 2021
System state dump requested by (instance=1, osid=45171 (LGWR)), summary=[abnormal instance termination].
System State dumped to trace file /u01/app/oracle/diag/rdbms/xxxx/xxxx/trace/xxxx_diag_45155_20211229172002.trc
Dumping diagnostic data in directory=[cdmp_20211229172002], requested by (instance=1, osid=45171 (LGWR)), summary=[abnormal instance termination].
Wed Dec 29 17:20:02 2021
ORA-1092 : opitsk aborting process
Wed Dec 29 17:20:02 2021
License high water mark = 49
Instance terminated by LGWR, pid = 45171
USER (ospid: 159932): terminating the instance
Instance terminated by USER, pid = 159932
Wed Dec 29 17:20:04 2021
Adjusting the default value of parameter parallel_max_servers
from 1280 to 970 due to the value of parameter processes (1000)
Starting ORACLE instance (normal)
************************ Large Pages Information *******************
Per process system memlock (soft) limit = 143 GBTotal Shared Global Region in Large Pages = 14 GB (75%)Large Pages used by this instance: 7329 (14 GB)
Large Pages unused system wide = 6 (12 MB)
Large Pages configured system wide = 17000 (33 GB)
Large Page size = 2048 KB

从日志里可以看到由于产生了ORA-1092 : opitsk aborting process报错,导致该数据库实例宕。此时就要去分析是什么原因导致产生ORA-1092报错。首先看了下报错时产生的/u01/app/oracle/diag/rdbms/xxxx/xxxx/trace/xxxx_diag_45155_20211229172002.trc文件,文件内容太多,格式化输出后也不太好排查,希望能从其它地方获取到一些价值信息。

首先在MOS上查询了 ORA-1092 : opitsk aborting process报错原因,MOS上讲该问题产生的原因也比较多,此时尝试看下操作系统日志,看下是否有什么价值的信息。

从操作系统的 /var/log/messages里,发现日志不停的有xxx-xxx-standby-db1 kernel: EXT4-fs warning (device sda2): ext4_dx_add_entry: Directory index full!这样的报错:
 

image.png


该报错的原因是因为 操作系统小文件太多,导致innode块被占用完了,然后查了下数据库相关文件,发现是两个数据库的审计文件占用了大量innode,通过du -sh 查看都被夯住了,是否是该问题导致数据库实例宕呢。

经查询该数据库已关闭了审计查询,但sys用户依然会产生大量审计文件。

三、问题处理

于是通过find 结合 xargs 和rm 将两个实例下的审计文件大量删除,并配置了定时清理任务,后续观察了几天,innode已经由原来的89%降到了当前的34%,操作系统日志未在报index full满的报错信息,备库和主库的同步也正常。

欢迎大家关注我视频公众号和微信公众号

图片

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/618560.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

乐写9612手写板实测故障

闲鱼上淘了二手的 ①需要驱动很强的usb口,老usb口会不识别,尤其是笔记本容易不识别,非常容易出现下面这种问题: ②需要microsoft2013以上的,兼容性做的比较差 ③由于可视化,导致数据线容易烧,…

GEE非参数趋势分析(Mk-Sen)

趋势分析是寻找感兴趣的东西正在增加的地方,或者 减少多少。更具体地说,本教程演示了 使用非参数 Mann-Kendall 检测影像中的单调趋势 测试是否存在增加或减少的趋势以及 Sen 的斜率 量化趋势的幅度(如果存在)。本教程还显示 估计…

缓存与数据库的数据一致性解决方案分析

在现代应用中,缓存技术的使用广泛且至关重要,主要是为了提高数据访问速度和优化系统整体性能。缓存通过在内存或更快速的存储系统中存储经常访问的数据副本,使得数据检索变得迅速,从而避免了每次请求都需要从较慢的主存储&#xf…

OSI七层网络模型 —— 筑梦之路

在信息技术领域,OSI七层模型是一个经典的网络通信框架,它将网络通信分为七个层次,每一层都有其独特的功能和作用。为了帮助记忆这七个层次,有一个巧妙的方法:将每个层次的英文单词首字母组合起来,形成了一句…

腾讯云优惠券详细介绍及领券步骤详解

随着云计算技术的不断发展和普及,越来越多的企业和个人开始选择使用云服务来满足自身的需求。腾讯云作为国内领先的云服务提供商,以其稳定、高效、安全的服务赢得了广大用户的信赖。为了回馈广大用户,腾讯云经常推出各种优惠活动,…

时间序列模型:lag-Llama

项目地址:GitHub - time-series-foundation-models/lag-llama: Lag-Llama: Towards Foundation Models for Probabilistic Time Series Forecasting 论文地址:https://arxiv.org/pdf/2310.08278.pdf hugging-face镜像:https://hf-mirror.c…

THS6.0.1.0开启健康检查(by lqw)

可以在节点管理器或者分组管理的编辑配置里添加以下信息: 之后点监控,点击实时指标,点击HTTP集群统计: 下图是配置并生效的效果: 也可以使用頁面配置: 推荐使用tcp形式,有的应用后端可能不支持http…

学校4-11天梯赛选拔赛

目录 L1-5 6翻了 题目 输入格式: 输出格式: 输入样例: 输出样例: 思路 AC代码 L1-1 嫑废话上代码 题目 输入格式: 输出格式: 输入样例: 输出样例: AC代码 L1-8 刮刮彩…

每日练习——leetcode402. 移掉 K 位数字和17. 电话号码的字母组合

目录 402. 移掉 K 位数字 题目描述 解题思路 代码实现 17. 电话号码的字母组合 题目描述 解题思路 代码实现 402. 移掉 K 位数字 题目描述 给你一个以字符串表示的非负整数 num 和一个整数 k ,移除这个数中的 k 位数字,使得剩下的数字最小。请…

攻防世界12-baby_web

12-baby_web 题目说想想初始页面是哪个,一般都是index.php,然后如题分析即可。 我们在链接后面拼接上/index.php,返回后发现界面又回到了1.php,有可能是重定向。 我们点击检查-网络,发现没有index的请求,…

LINUX命令行后台运行matlab程序

UBUNTU安装了matlab,需要后台运行matlab程序。 一、MobaXterm程序(非后台) 使用mobaxterm程序,ssh连接ubuntu,在对应账号中输入matlab,即可基于mobaxterm自带的Xserver可视化界面,打开matlab界…

如何进行宏观经济预测

理性预期经济学提出了理性预期的概念,强调政府在制定各种宏观经济政策时,要考虑到各行为主体预期对政策实施有效性的影响,积极促成公众理性预期的形成,从而更好地实现宏观调控的目标。政府统计要深入开展统计分析预测研究&#xf…