警示:一个专为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 条评论
登录 后参与评论

相关文章

来自专栏编程一生

系统的稳定性建设

1292
来自专栏杨建荣的学习笔记

通过addm分析io问题(r2笔记64天)

昨晚在做测试环境数据迁移的时候,遇到了io的问题,本来预计2,3个小时完成的数据导入工作最后竟然耗了7个多小时。在数据的导入中,使用了10个并行的sessio...

2596
来自专栏数据和云

微信课堂:化解控制文件归档日志查询缓慢及ASM执行计划一则

在我们的技术讨论群『云和恩墨大讲堂』中,还有日常的微信互动中,经常有朋友会提出一些有趣的小问题,在空闲的时候,我希望能够记录下来,和大家做一点小分享,以点滴的知...

824
来自专栏杨建荣的学习笔记

Oracle数据误操作全面恢复实战(r11笔记第78天)

对于DBA来说,面对误操作带来的数据恢复难度,其实很大。主要有以下几个方面: 误操作的影响范围极大,很可能不是删点,改点数据的操作,有时候可能是让人望而兴叹...

3255
来自专栏北京马哥教育

分布式文件系统Mogilefs介绍

一、分布式文件系统简介: 什么是分布式存储: 分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器...

2585
来自专栏杨建荣的学习笔记

复杂SQL性能优化的剖析(二)(r11笔记第37天)

昨天的一篇文章复杂SQL性能优化的剖析(一)(r11笔记第36天) 分析了一个SQL语句导致的性能问题,问题也算暂时告一段落,因为这个语句的执行频率是1...

3479
来自专栏比原链

剥开比原看代码14:比原的挖矿流程是什么样的?

Gitee地址:https://gitee.com/BytomBlockchain/bytom

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

Ansible如何管理你的云:AWS、Openstack?你的运维也可以很帅!

一、云时代的运维 本文是我和李尧老师一起实验。李尧是红帽高级培训讲师,目前负责红帽中国区员工内部技术培训与认证。 物理机时代的运维,由于设备数量较少,运维人员的...

4226
来自专栏CSDN技术头条

从架构角度来看 Java 分布式日志如何收集

本文来自作者 张振华 在 GitChat 上分享 「从架构角度来看 Java 分布式日志如何收集」

1105
来自专栏搜云库

HBase 深入浅出

HBase 深入浅出 HBase 在大数据生态圈中的位置 提到大数据的存储,大多数人首先联想到的是 Hadoop 和 Hadoop 中的 HDFS 模块。大家熟...

2189

扫描关注云+社区