警示:一个专为AIX上12.1版本定制的Bug正在发生

题记:一些用户在使用 Oracle Database 12.1 版本时(包含12.1.0.1 和 12.1.0.2 初始版本),再次遭遇到一个『专门为 AIX 定制的BUG』,这个BUG的影响非常大,再次提醒大家关注。

前一段,我们发布过一篇文章,题目是:一个专为AIX上11.2.0.4版本定制的Bug正在高发 ,很多朋友回复遇到过这个BUG,并且开始做出修正。最近,随着 12c 用户的逐渐增多,这个版本中的问题也在逐渐的呈现出来。

一些用户在使用 Oracle Database 12.1 版本时(包含12.1.0.1 和 12.1.0.2 初始版本),再次遭遇到一个『专门为 AIX 定制的BUG』,这个BUG的影响非常大,再次提醒大家关注。

这个BUG的编号是:21915719

在MOS上被提升到『警告』级别。

这个BUG的标题是:Database hang or may fail to OPEN in 12c IBM AIX or HPUX Itanium

也就是:数据库在 12c IBM AIX 平台上可能会Hang或者不能OPEN打开,后来加入了可能受到影响的安腾平台。

在出现问题时,数据库出现的错误是:

死锁 或者 ORA-600 [kcrfrgv_nextlwn_scn] ORA-600 [krr_process_read_error_2] 。

Doc ID 1957710.1 ALERT: Bug 21915719 Database hang or may fail to OPEN in 12c IBM AIX or HPUX Itanium - ORA-742, DEADLOCK or ORA-600 [kcrfrgv_nextlwn_scn] ORA-600 [krr_process_read_error_2]

导致这个问题的原因是:

大家知道,在Oracle 12.1 中,数据库将原本单一的 LGWR 进程进化为主从进程的结构,LGWR一个主进程,配合最多100个从属的SLAVE进程工作,可以将原来典型的Log File Sync等待降低,增加数据库的事务率和处理能力。

在云和恩墨的 12.2 体系结构图中,详细描述了这一新特性

『关注本公众号,回复:122ARCH 可以获得电子版 』

就是因为这个新特性的引入,带来了这样的数据库不能启动或者内部错误的风险。

如何规避这种风险:

先说如何规避,Oracle 几乎为每个新特性都设置了开关,可以通过隐含参数 _use_single_log_writer 来控制,将该参数设置为TRUE,就回到了11g的模式,使用单一的LGWR:

ALTER SYSTEM SET "_use_single_log_writer"=TRUE SID='*' SCOPE=SPFILE;

注意:如果数据库已经遇到这个BUG,改参数就来不及了。Oracle 已经为这个BUG提供了补丁修正。这个问题在 12.1.0.2.160419 的 PSU 中修正,如果你已经应用了这个PSU,则无需担忧,否则就应该正视这个问题。

在这个BUG中,Oracle这样描述了如何可能踩到这个大坑。

这个问题仅当以下条件都遭遇时出现:

  1. 在 AIX 平台上的 Oracle 12.1 版本;
  2. LGWR 和 LGWR Slave 进程同时运行在某个实例,处于Hang的挂起状态,没有进一步的日志切换出现,事务无法进行;
  3. 在Hang附近,告警日志可能出现类似 LGWR / LG<nn> waits for event 'LGWR any worker group' for <n>secs 的日志信息;
  4. 转储SYSTEM State可以看到 LGWR 从属进程处于 LGWR worker group ordering 状态等待;
  5. LGWR从属进城等待的核心 lwn_id 是相同的,信息类似:waiting for 'LGWR worker group ordering' lwn_id=0xde ;
  6. 重启可以解决Hang的问题,但是有时候会遇到 ORA-600 [kcrfrgv_nextlwn_scn] or ORA-600 [krr_process_read_error_2] 而无法启动;

综合以上的信息可以看出:

之所以出现挂起是引用:LGWR的Slave进程需要按照顺序(ordering)来接受日志,但是在Power处理器上,因为某些原因并未按照顺序来传递日志,导致所有的Slave进程都在等待某个序号的日志批量,这就导致了挂起。

使用新特性,了解新特性,关注行业动态,对于数据库来说是多么重要。

在使用新版本时,总会遇到新问题,欢迎大家留言和我们分享你的踩坑故事。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2017-08-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据和云

DBA生存警示:系统存储级误删除案例及防范建议

编辑手记:对于资深的老DBA们,他们在漫长的职业生涯中养成了很多稀奇古怪的守则,以在复杂多变的环境中“幸存”,这源于无数血泪的教训,我曾经在《数据安全警示录》一...

33110
来自专栏逻辑熊猫带你玩Python

Linux | “搭建verilog学习环境”

写这一篇文章的初衷一个是分享给各位想进入IC领域的读者以及感谢一位贵人。VerilogHDL是国内目前最流行的硬件描述语言。关于硬件描述语言的问题,这里并不多谈...

6793
来自专栏美丽应用

AcDisplay:科技,简洁的锁屏通知

1163
来自专栏农夫安全

用手机轻松刷洞,移动端开源安全测试工具合集

用手机轻松刷洞,移动端开源安全测试工具合集 ? 随着移动互联网的迅速发展,移动安全也慢慢成为了新的热门行业,以往移动应用的安全测试大多是使用在线检测平台或者...

6758
来自专栏北京马哥教育

推荐!国外程序员整理的系统管理员资源大全(一)

备份软件 Amanda -客户端-服务器模型备份工具 Bacula - 另一个客户端-服务器模型备份工具 Backupninja -轻量级,可扩展的元数据备份系...

44710
来自专栏大魏分享(微信公众号:david-share)

从API源码看API经济 | 从开发角度看应用架构13

https://yq.aliyun.com/articles/497806?utm_content=m_42865

1632
来自专栏信安之路

打造属于自己的渗透神器 第二篇

今天我又给大家带来了新的一篇打造一个属于自己的渗透神器,之前在浏览视频的时候看到一部视频就是讲这个的今天我们就一起试一下。

1210
来自专栏linux、Python学习

123个Python黑客工具,再也不用问女朋友要手机密码了

今天的文章来源于dloss/python-pentest-tools,本文中列举了123个Python渗透测试工具,当然不仅于渗透~

3342
来自专栏张戈的专栏

linux/scp命令报“bash: scp: command not found lost connection”错误的解决办法

这两天接到的任务是给 JAVA 开发项目组部署【JAVA+MySQL 主从+Redis 主从】运行环境。部署过程中大问题倒没有,小问题却不少,因此也涨了不少经验...

3184
来自专栏北京马哥教育

123个Python黑客工具,再也不用问女朋友要手机密码了

今天的文章来源于dloss/python-pentest-tools,本文中列举了123个Python渗透测试工具,当然不仅于渗透~ 下面我们就开始吧~ ———...

3994

扫码关注云+社区