思路分析:

1、发现数据库宕机,检查alert日志发现如下出现控制文件:I/O错误

Thu Apr 11 06:40:14 2019
WARNING: Read Failed. group:2 disk:1 AU:675 offset:16384 size:16384
WARNING: failed to read mirror side 1 of virtual extent 0 logical extent 0 of file 260 in group [2.3852408873] from disk DATA_0001 allocation unit 675 reason error; if possible, will try another mirror side
Errors in file /u01/app/oracle/diag/rdbms/jsswgsjk/jsswgsjk1/trace/jsswgsjk1_ckpt_93628.trc:
ORA-00202: control file: '+DATA/jsswgsjk/controlfile/current.260.998936297'
ORA-15081: failed to submit an I/O operation to a disk
ORA-27072: File I/O error
Linux-x86_64 Error: 5: Input/output error
Additional information: 4
Additional information: 1382432
Additional information: -1
Thu Apr 11 06:40:15 2019
WARNING: Read Failed. group:2 disk:1 AU:675 offset:65536 size:16384

2、检查ASM日志

-------发生磁盘超时,开始dimountOCR

Thu Apr 11 06:39:29 2019

NOTE: process _b000_+asm1 (31654636) initiating offline of disk 0.3671375779 (OCR_0000) with mask 0x7e in group 3

NOTE: process _b000_+asm1 (31654636) initiating offline of disk 1.3671375780 (OCR_0001) with mask 0x7e in group 3

NOTE: process _b000_+asm1 (31654636) initiating offline of disk 2.3671375781 (OCR_0002) with mask 0x7e in group 3

NOTE: checking PST: grp = 3

GMON checking disk modes for group 3 at 13 for pid 67, osid 31654636

ERROR: no read quorum in group: required 2, found 0 disks

NOTE: checking PST for grp 3 done.

NOTE: initiating PST update: grp = 3, dsk = 0/0xdad4bfa3, mask = 0x6a, op = clear

NOTE: initiating PST update: grp = 3, dsk = 1/0xdad4bfa4, mask = 0x6a, op = clear

NOTE: initiating PST update: grp = 3, dsk = 2/0xdad4bfa5, mask = 0x6a, op = clear

GMON updating disk modes for group 3 at 14 for pid 67, osid 31654636

ERROR: no read quorum in group: required 2, found 0 disks  <<<< 0个磁盘可访问。

Thu Apr 11 06:39:29 2019

解决方案:

1、综合以上信息分析,故障分析总结如下:

Oracle RAC ASM管理磁盘组有一种特有的心跳磁盘监控’ASM PST heartbeat’,这个监控是在oracle 11.2.0.3之后出现,系统默认设至是15s,到12.1.0.2之后oracle把默认值改为了120s。

这个PST heartbeat:往往发生在IO闪断/繁忙/CPU繁忙时,PST检测到同步延迟超过"_asm_hbeatiowait"值时,会通知ORACLE ASM INSTANCE dismount disk group,造成ASM instance disk group offline。一般Normal Redundancy或者High Redundancy策略下,超过半数的disk group offline就会造成Rack脑裂。

我们任何的升级在链路切换中,PP一般会hold住 IO 15秒钟左右再恢复,很大可能性会引起上述timeout问题,在升级之前强烈建议更改此参数值到120。

具体的检查这个参数的办法如下,修改为120s后,为确保设置生效,需要重启CRS服务。

2、检查参数 “_asm_hbeatiowait” 的值:(检查为:15)

select ksppinm as "hidden parameter", ksppstvl as "value"

from x$ksppi

join x$ksppcv

using (indx)

where ksppinm like '\_%' escape '\'

and ksppinm like '%asm_hb%'

order by ksppinm;

3、修改方案,在ASM实例下调整

alter system set "_asm_hbeatiowait"=120 scope=spfile;

注意重启ASM或者CRS

数据库alert报错:ORA-00202、ORA-15081、ORA-27072的更多相关文章

  1. 数据库open报错ORA-01555: snapshot too old

    原文博客链接地址:数据库open报错ORA-01555: snapshot too old 今天正在东莞蜜月的时候.一个学生说他管理的測试库出问题了,无法open,我们先来看看是什么问题: Recov ...

  2. 11gR2数据库日志报错:Fatal NI connect error 12170、

    11gR2数据库日志报错:Fatal NI connect error 12170.TNS-12535.TNS-00505 [问题点数:100分,结帖人MarkIII]             不显示 ...

  3. 4、Oracle 数据库 startup 报错:ORA-27102: out of memory

    1.数据库启动报错: ORA-: out of memory SQL> startup pfile='/db/oracle/init.ora'; ORA-: out of memory Linu ...

  4. 导入MySQL测试数据库employee报错

    导入MySQL测试数据库employee 报错 下载地址:https://launchpad.net/test-db/ 上传解压: [root@001 ~]# tar xf employees_db- ...

  5. 同时操作两个数据库:报错Illegal attempt to associate a collection with two open sessions

    今天我在一个操作两个数据库的SSH里 同时插入1条数据 报错 Illegal attempt to associate a collection with two open sessions 在这里有 ...

  6. 无法删除MySql数据库,报错1010 error dropping

    环境:MySQL.Navicat 8 操作:Drop database testDB 报错:1010 error dropping database 解决方法:          ps -ef | g ...

  7. 修改oracle数据库内存报错

    今天修改oracle数据库内存时, alter system set memory_max_target=10240M scope=spfile;语句正确修改:但重启时却报错 : SQL> al ...

  8. python+Django+test 测试数据库生成报错

    前提: 使用Django自带的test进行单元测试. 问题描述: 运行:python manage.py test,报错,出现数据库乱码的现象,报错如下: Creating test database ...

  9. 导入数据库备份报错1067 – Invalid default value for ‘create_time’

    通过navicat工具导入psc数据库备份文件,报错如下,mysql版本5.7 执行如下语句不通过 DROP TABLE IF EXISTS `guard_user`; CREATE TABLE `g ...

随机推荐

  1. for循环比较

    在实际的开发过程中,一般都会用到for循环,都可以用来遍历,但是这几个之间又存在细微的差别! 一,传统的for循环: var arr = ['good', 'good', 'study']; for ...

  2. 继续写java和socket

    上回书说道,java中通过socket链接的两台计算机可以通过两端的两个Socket对象来读取和发送来自流的信息所以对于客户端和服务端只需要封装一个相同的收发信息的窗口就好 代码如下 package ...

  3. 20164301 Exp3 免杀原理与实践

    Exp3 免杀原理与实践  1. 实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应 ...

  4. 解决MOFH免费空间cpanel面板大文件无法解压的情况

    解决办法: 解压大文件,重新压缩为tar格式的压缩格式,这样可以更小,而且也可以在cpanel面板解压,记得使用filezilla软件上传文件,在cpanel的网页界面不要刷新,一刷新就不可以解压大文 ...

  5. PowerShell 知识点总结

  6. Centos7使用yum快速安装ansible

    ansible功能简介:ansible可以实现批量系统配置.批量软件部署.批量文件拷贝.批量运行命令等功能.主要基于ssh实现连接各个被控制端 yum默认安装的ansible,常用的配置文件有两个,一 ...

  7. 使用python调用其他脚本

    cmd = '<command line string>' print(cmd) p = subprocess.Popen(args=cmd, shell=True, stdout=sub ...

  8. Ansible 之动态Inventory文件(二)

    上篇主要讲解了Ansible 的安装和配置,并且根据不同的业务场景将服务器的信息存放在Ansible的Inventory中,其实存放这样的数据每次更新都需要我们自动的添加和删除,这样对于我们维护起来很 ...

  9. 安装Visual Studio 语言包时出现windows 程序兼容模式已打开.请将其关闭

    打开 cmd.exe 输入 安装包路径 /Uninstall例如:D:\vs_lang_cn.exe /Uninstall (中间有个空格,Uninstall前是个左斜杠)回车 后 安装包会运行.点击 ...

  10. kill -9 ,kill -12,kill -15

    https://www.cnblogs.com/liuhouhou/p/5400540.html Linux kill -9 和 kill -15 的区别 大家对kill -9 肯定非常熟悉,在工作中 ...