作者 | JiekeXu
来源 |公众号 JiekeXu DBA之路(ID: JiekeXu_IT)
如需转载请联系授权 | (个人微信 ID:JiekeXu_DBA)
大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看ORA-00600: [4194] 错误解决办法,欢迎点击上方蓝字“JiekeXu DBA之路”关注我的公众号,标星或置顶,更多干货第一时间到达!
上一篇文章还停留在腊月二十六,现在正月十五也已经过去了,这个年算是过去了,这二十多天里看到很多大佬都在不停的更新文章,卷的铺天盖地,我就只能假装看不见,算是躺平了,什么也没有干,静静地等待这个年过完。本文是今年年初一位朋友遇到的数据库的小问题,事后指导其记录形成的文档,算是小白记录问题处理过程,也是本公众号的第一篇投稿(还有投稿的读者朋友可以找我私聊),适合初学者通过搜索引擎、MOS 来解决 Oracle 数据库遇到的小问题并按照一定的格式来记录问题处理过程,具有一定的参考性,废话不多说,进入正文。
生产环境是 Oracle11g 11204 版本的单机数据库,没有备库,部分数据有物理备份;数据库本身没有任何补丁。
一项目组的外地项目的生产环境,上个月的某个周五凌晨几台物理机宕机,当机器正常启动后,厂商反馈数据库有异常,做了很多修复依旧不行(不知道做了哪些修复还不行),于是乎他则接手,开通远程查看数据库发现,数据库可以正常启动,但是无法执行任何查询命令,会立马宕机,如下所示:
很奇怪,可以正常 open 数据库,但是不能进行下一步的查询操作,于是只能去查看 alert 日志,发现有大批量的 ORA-00600 报错:
对于 ora-00600 错误,我们只能借鉴 MOS 去搜索相关报错了,通过在 MOS 中搜索 ORA-00600 [4194] 来获取相同或相似知识,如下图第二篇 Doc ID 1428786.1 就是我们本次借鉴的文章。
强大的 MOS 网站也提供了一个专门搜索 ORA-600 700 7445 的工具链接,可可以直接在此页面搜索相关错误代码,查找 bug 等等。[ORA-600/ORA-7445/ORA-700 Error Look-up Tool (Doc ID 153788.1)]
在MOS上找到了一篇文章 (Doc ID 1428786.1)对这个问题有具体的分析与处理过程。
在数据库崩溃之前,alert.log 中出现了以下错误。ora - 00600:内部错误代码,参数:[4194 ], [#], [#], [], [], [], [], [] 错误表明在重做记录和回滚(撤消)记录之间检测到不匹配,这个问题通常发生在断电或硬件故障导致数据库崩溃的情况下。这不正是符合我们上周五凌晨断电的问题吗? 那么一起来看看处理办法吧。
根据(Step by step to resolve ORA-600 4194 4193 4197 on database crash (Doc ID 1428786.1)文档中提供的方法尝试恢复数据库。
1、创建pfile(nomount)
这里也没法直接在 nomount 下创建 pfile,索性直接通过 strings 命令将 spfile 内容写入到 pfile 里,然后检查 initorcl.ora 参数内容是否出现换行、空格等错误格式加以修改。
2、修改 pfile
添加以下参数:
3、使用 restrict 模式启动
关闭数据库并用 pfile 启动:
编者注:如果 pfile 在默认的 dbs 目录下,启动时也可不用指定路径就能访问。
查看回滚段:
这一点非常重要 - 我们希望所有撤消段都处于离线状态 - SYSTEM 将始终在线。如果有任何 "部分可用 "或 “需要恢复”,需要另当别论。如果全部脱机,则继续下一步。
4、创建新的 undo 表空间
这里如果有默认的 pfile 存在于 dbs 目录下,我们需要将其 mv 重命名,防止使用 pfile 启动。
5、使用 spfile 重新启动数据库
数据库正常启动,也可正常查询,alert 日志再无 ORA-00600 错误,算是业务恢复正常。
最后说一下微信群,这几年一直为大多数网友们提供数据库相关技术咨询与支持,但由于个人能力有限,精力有限,同时也是一个打工者,上班时间要以搬砖为重,可能有一些朋友的问题没有得到回答,这也是建立微信群的目的,通过微信群为大家提供便利(PS:那些考证的买云服务的请绕道,一经发现全网拉黑;还有那些打算获取个人流量涨粉的,后面也会有一定的限制;)微信群就是为了提供技术交流的。
微信群社区
提供怎么的便利呢,因为微信公众号没有留言功能,互动体验感不是很好,所以建立了我微信公众号同名的群社区,在微信群里为大家提供更加友好的交流环境。于是在去年年中的时候建立了微信群,目前已经扩展到②群,也邀请了行业内的一些大佬,包括十几位 ACE(Oracle、MySQL、PG 方向),几位 Oracle 原厂工程师、前 Oracle 工程师,几十位 OCM、OCP 等大多数行业大佬,同时也邀请了几位 MySQL 大佬及 PG 大佬,几个月以来群里每天基本上都有聊天信息,算是我见到的最活跃的社群了,两个小时不看群,就一堆消息,目前②群还有一些坑位,限时免费开放,同时也会不定期在群里举行抽奖送书活动,如果有感兴趣的朋友可以添加我微信【JiekeXu_DBA】私聊我进群,谢谢。
全文完,希望可以帮到正在阅读的你,如果觉得此文对你有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~~
欢迎关注我公众号【JiekeXu DBA之路】,第一时间一起学习新知识!以下四个地址可以找到我,其他地址均属于盗版侵权爬取我的文章,而且代码格式、图片等均有错乱,不方便阅读,欢迎来我公众号或者墨天轮地址关注我,第一时间收获最新消息。
欢迎关注我的公众号【JiekeXu DBA之路】,第一时间一起学习新知识!————————————————————————————
公众号:JiekeXu DBA之路
CSDN :https://blog.csdn.net/JiekeXu
墨天轮:https://www.modb.pro/u/4347
腾讯云:https://cloud.tencent.com/developer/user/5645107
————————————————————————————