记一次rac故障原因分析(虚拟化平台)
一 现象描述
XX客户于1月14号凌晨业务中断,检查数据库发现数据库集群宕机。
XX客户于2月14号春节初五早上业务异常,连接数据库无响应。
二 问题详细诊断
1月14号故障
1月14号凌晨2点,客户反馈业务中断,发现节点1无法连接,客户联系云工程师紧急处理,凌晨4点半节点1可以连接。
节点2连接正常,检查发现节点2集群服务异常。
检查节点2数据库日志发现:
在1点43分节点2等待事件log file parallel write超时80秒,LGWR挂起超过70秒,Lgwr为数据库核心进程,出现异常时会导致数据库不可用。

检查节点2 I/O使用情况:

可以看到在1点42分开始 读写I/O很低的情况下%util跑满,说明I/O已经100%跑满,已经来不及处理。
再查看节点2集群日志

发现在1点50分节点2和节点1的私网通信异常,导致节点2被驱逐。
节点1数据库日志

节点1在1点45分出现ORA错误 检查trc日志文件

发现等待事件为gc等待
由于所有的跨节点访问都会先由lgwr进程写入日志,此时lgwr写入挂起导致无法响应gc请求,紧接着节点1 kill该会话,检测到节点2实例终止然后发起Reconfiguration。
4点13分在主机工程师修复节点1后,启动集群业务恢复正常。
检查节点1操作系统日志,数据库日志,集群日志未发现其他异常。
检查节点1主机重启记录,发现节点1在1点51分已经重启,重启失败操作系统进入救援模式
reboot system boot 3.10.0-1160.el7. Sun Jan 14 01:51 - 03:51 (02:00
2月14号故障
查看节点2数据库日志

在2月14号10点38分 数据库出现lgwr异常,log file parallel write 写入异常。紧接着节点2实例终止。
分析DBA_HIST_ACTIVE_SESS_HISTORY 可以看到在实例重启前会话最终都被gc事件阻塞

三 故障原因
在1月14号的故障中,1点42分节点2 lgwr异常导致节点2在1点43分宕机,节点2在1点50分主机异常重启,重启失败进入救援模式导致整个集群不可用。
在2月14号的故障中,10点37分15秒开始由于节点2 数据库核心进程lgwr异常,导致节点1的gc请求全部挂起,最终导致节点2宕机,在11点05分恢复正常。
在2次故障中,均由于lgwr进程异常挂起等待log file parallel write引起节点宕机,造成该等待事件的原因为磁盘等待IO写入,I/O响应出现了异常。
四 建议
1、将数据库由虚拟机平台迁到更加稳定物理机上。
2、排查虚拟化平台I/O等待的原因并解决。

相关文章:
记一次rac故障原因分析(虚拟化平台)
一 现象描述 XX客户于1月14号凌晨业务中断,检查数据库发现数据库集群宕机。 XX客户于2月14号春节初五早上业务异常,连接数据库无响应。 二 问题详细诊断 1月14号故障 1月14号凌晨2点,客户反馈业务中断,发现节点1无法连接&…...
Vue CLI 3 项目构建
Vue CLI 是一个功能强大、易于使用的工具,可以极大地简化 Vue.js 应用的开发过程。通过快速创建项目、灵活的插件系统和丰富的配置选项,开发者可以更专注于业务逻辑,而不是底层配置。无论是新手还是经验丰富的开发者,Vue CLI 都是…...
1114 Family Property (25)
This time, you are supposed to help us collect the data for family-owned property. Given each persons family members, and the estate(房产)info under his/her own name, we need to know the size of each family, and the average area and n…...
详细介绍Sd-WebUI提示词的语法规则
AI绘画中最大的门槛就是提示词,对英语水平、文学水平、想象力、灵感等要求较高。不能每次一输入正向提示词(positive prompt),就只会写a girl, big eyes, red hair。虽然sd-webui软件可以直接翻译,输入一个子母后会立刻…...
document.body为null问题
调用document.body.append方法出现null的问题,一看就是放在了head中,一种方案是放在最后面,要不就和jquery一样监听,下面是代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8…...
2024国赛A问题5
问题五 龙头最大速度优化模型的建立 问题五在问题四的曲线的基础上对速度进行了约束,即在逐步改变龙头速度的情况下,各个龙身的速度也会依次改变,给出龙头的最大行进速度,使得舞龙队各把手的速度均不超过 2 m/s。即可依此构建一个龙头速度的…...
Kalilinux下MySQL的安装
MySQL是一个广泛使用的开源关系型数据库管理系统,它是最流行的关系型数据库之一。在Kalilinux下安装MySQL可以为我们提供方便的数据库管理和开发环境。本文将介绍如何在Kalilinux中安装MySQL,并提供一些常用的代码示例。 步骤一:更新软件包 …...
文件路径与Resource接口详解
目录 第一章、快速了解文件路径1.1)什么是文件路径?1.1.1)绝对路径1.1.2)相对路径 1.2)重要:相对路径的表示方法1.2.1) ./ 与 ../ 1.3)文件路径与环境变量1.3.1)什么是环境变量1.3.2…...
极狐GitLab 17.7正式发布,可从 GitLab 丝滑迁移至极狐GitLab【二】
GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 官网极狐…...
分布式光纤传感|分布式光纤测温|线型光纤感温火灾探测器DTS|DTS|DAS|BOTDA的行业16年的总结【2024年】
背景: 从2008年,从事分布式光纤传感行业已经过了16年时间了,依稀记得2008年,看的第一遍论文就是中国计量大学张在宣老爷子的分布式光纤测温综述,我的经历算是行业内极少数最丰富的之一。混过学术圈: 发表…...
存储过程实现多个分类不同计算规则得到对应的分类、月份和款号
该存储过程 PRO_MON_MDCODE 实现多个分类不同计算规则得到对应的分类、月份和款号,其中线下分类的款最早出现时间会在20230101,最晚是当前月份后12月,电商的款取商品维表的23,24,25年商品年份的A款,其他业务分类逻辑(A-线上,B电商公司,C品牌公司)的款最早出现时间会在2…...
aj-report本地前后端分离部署运行
github项目地址 aj-report-mine 在源代码v1.4版本基础上,本地进行前后端分离部署开发 这里我是进行了整合,把自己在拉取源代码到成功运行过程中的一些东西直接整合,根据下面的步骤即可成功运行 资源获取 夸克网盘(16-github-aj-report-re…...
CSS 过渡动画效果
在 CSS 中,transition 是用来实现元素属性平滑过渡的一个属性。通过 transition,你可以指定当元素的状态发生变化时,如何在一定时间内平滑地过渡到新的样式,而不是立即跳变。 使用于侧边栏展开和收起了,左侧区域的自适…...
网络安全 - DOS
1.1.1 摘要 最近网络安全成了一个焦点,除了国内明文密码的安全事件,还有一件事是影响比较大的——Hash Collision DoS(通过Hash碰撞进行的拒绝式服务攻击),有恶意的人会通过这个安全漏洞让你的服务器运行巨慢无比&…...
【强化学习】Stable-Baselines3学习笔记
【强化学习】Stable-Baselines3学习笔记 Stable-Baselines3是什么安装ExampleReinforcement Learning Tips and TricksVecEnv相关在stablebaselines中使用自定义环境 Stable-Baselines3是什么 Stable Baselines3(简称SB3)是一套基于PyTorch实现的强化学习…...
前端真实面试题自用
一、写在前面 笔者,经过计算机学硕考研的失败后,想谋求一份前端工作实在是太难了。一方面,确实曾经学习过的东西很久没有拾起,另一方面,对于前端面经还是记忆不深刻,特地写此贴记录笔者在真实前端面试中遇…...
vue3和springboot使用websocket通信
前端端口:9090 后端端口:8080 vue3 引入依赖: npm install sockjs-client stomp/stompjs vue页面 <template><div><h1>WebSocket 示例</h1><button click"sendMessage">发送消息</button>…...
JS 解构、数组扩展符和模板字符串的常见用法
文章目录 解构1. 对象解构2. 数组解构 数组扩展符模板字符串 解构 1. 对象解构 想把对象中的属性赋值给变量时, 需要一次一次的赋值,很麻烦。而对象解构, 就是把对象的结构拆解开, 然后把拆解后的属性自动赋值给匹配的变量。 (1) 对象属性赋值变量的传统写法&…...
低代码开源项目Joget的研究——Joget7社区版安装部署
大纲 环境准备安装必要软件配置Java配置JAVA_HOME配置Java软链安装三方库 获取源码配置MySql数据库创建用户创建数据库导入初始数据 配置数据库连接配置sessionFactory编译下载tomcat启动下载aspectjweaver移动jw.war文件编写脚本运行 测试参考资料 Joget,作为一款开…...
Golang 为什么没有注解?
Go 的哲学是:“少就是多,显式优于隐式。”注解虽然方便,但会违背 Go 追求简洁和清晰的设计理念。 什么是注解?为什么看起来很实用? 注解的定义:注解是一种特殊的元信息,用于修饰代码(如类、方法、字段等),让程序或工具在运行时或编译时解析和处理这些信息。例如: …...
3款高效开源工具实现抖音无水印视频解析与下载
3款高效开源工具实现抖音无水印视频解析与下载 【免费下载链接】DouYinBot 抖音无水印下载 项目地址: https://gitcode.com/gh_mirrors/do/DouYinBot 🎯 核心价值解析:技术赋能内容获取 在数字化内容爆炸的时代,抖音作为主流短视频平…...
AI大模型的简历如何写才能拿到面试机会?简历+项目+面试技巧+面试题一套全搞定!
AI大模型的简历如何写才能拿到面试机会?简历项目面试技巧面试题一套全搞定! 一、简历撰写:突出AI大模型核心能力 1. 技术栈明确标注 必写项: 框架:PyTorch、TensorFlow、Hugging Face Transformers、DeepSpeed、Lang…...
2025届毕业生推荐的十大AI辅助论文工具解析与推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在开题报告撰写进程当中,人工智能技术能够起到高效辅助功效。其一,凭…...
Linux 的 id 命令
id 是 Linux 系统中一个常用的命令行工具,用于显示用户和组的身份信息。 基本功能 id 命令可以显示当前用户或指定用户的以下信息: 用户 ID (UID)主组 ID (GID)所属的所有组 (Groups)用户名和组名(当与数字 ID 对应时) 常用命…...
递推限幅消抖数字滤波函数的实现(C 语言,嵌入式 / Keil 通用)
前言在嵌入式系统、传感器采样、工业数据采集场景中,瞬时尖峰、随机野值、信号抖动是最常见的干扰问题。直接使用原始数据极易导致控制误判、显示跳变、系统异常。本文介绍一种轻量、高效、鲁棒性极强的递推限幅 连续消抖数字滤波算法,不占用大量 RAM、…...
热传导方程在工程仿真中就像老朋友的聚会——大家总得找个方式坐下来聊聊温度怎么传。今天咱们用MATLAB折腾几个一维和二维的导热算例,顺便聊聊不同计算格式的脾气
【MATLAB各种计算格式的一维/二维导热算例】 1. 一维下的全显格式,全隐格式,半隐格式的导热算例 2.二维下的全显格式,全隐格式,隐式格式ADI迭代,隐式格式点迭代,隐式格式高斯-赛德点迭代(GS&…...
Java验证数组中的字符串是否对称,只判断字母和数字,忽略大小写
1、Java验证数组中的字符串是否对称,忽略大小写public class Main {public static void main(String[] args) {String[] strings {"A manm, a plan, a canal, Panama", "Madam", "12321", "12345"};findPalindromicAlphan…...
探索p5.js Web Editor:重构创意编程体验的开发平台
探索p5.js Web Editor:重构创意编程体验的开发平台 【免费下载链接】p5.js-web-editor The p5.js Editor is a website for creating p5.js sketches, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners, and …...
2026最权威的AI学术平台推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 把维普系统检测 AI 生成文本的特性揪住,要使 AI 率降下来,得从词汇、…...
kprobe函数入口时的汇编跳板执行流程与栈帧机制
kprobe函数入口汇编跳板执行流程与栈帧机制 文章目录kprobe函数入口汇编跳板执行流程与栈帧机制前言环境准备ftrace跳板创建跳板执行流程与栈帧逐行拆解初始状态与安全校验双层栈帧构建(CONFIG_FRAME_POINTER)通用寄存器保存与C函数参数准备剩余寄存器保…...
