ORA-27090故障,关于AIO-MAX-NR

在给某银行进行巡检时发现asm中的alert一直报ORA-27090错误。

通过巡检脚本,整理错误发生时间如下:

信息收集:

发生类似的错误,先收集alert日志的信息,操心系统的message日志。

Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_ora_18823.trc:

ORA-27090: Unable to reserve kernel resources for asynchronous disk I/O

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

Additional information: 128

Additional information: 202049510

Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_ora_18823.trc:

ORA-27090: Unable to reserve kernel resources for asynchronous disk I/O

Linux-x86_64 Error: 11: Resource temporarily unavailable

Additional information: 3

Additional information: 128

Sat Nov 12 08:42:43 2022

Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_ora_18852.trc:

ORA-27090: Unable to reserve kernel resources for asynchronous disk I/O

Linux-x86_64 Error: 11: Resource temporarily unavailable

Additional information: 3

Additional information: 128

Sat Nov 12 08:42:43 2022

Errors in file /u01/app/grid/diag/asm/+asm/+ASM1/trace/+ASM1_ora_20724.trc:

ORA-27090: Unable to reserve kernel resources for asynchronous disk I/O

错误信息在持续一段时间内asmchronous disk I/0错误,初步分析跟aio有关系。

接下来要做的事情:

  1. 去MOS上查看ORA-27090和aio相关的错误
  2. 查看操作系统aio相关参数和数据库aio参数

问题分析:

通过查看MOS上Doc ID 2229798.1文档得出结论:ORA-27090错误是“aio-max-nr”内核限制太低导致。“aio-max-nr”内核限制应根据链接中提供的Oracle建议进行调整:

Validated Configuration Details

根据Oracle数据库快速安装指南中显示的aio-max-nr相关信息,建议的最小值是1048576。 我们建议将aio-max-nr设置为3145728,以防发生ORA-27090。 并且aio-max-nr参数的最大值可以通过下式计算

aio-max-nr =no of process per DB * no of databases * 4096

按照这个公式计算出参数值后,应该持续监视/proc/sys/fs/aio-nr值,并监视I/O负载。

注意:

  1. 每个数据库的进程数不是后台服务器进程数,而是后台服务器进程数+用户进程数。
  2. 参数aio-max-nr是对aio-nr的限制,如果设置过高,不会报告任何影响。但是我们仍然应该监视/proc/sys/fs/aio-nr值并调整这个值。

查看当前系统配置参数信息:

由图片可以看出当前系统的fs.aio-max-nr的值为1048576并不满足Doc ID 2229798.1文档的要求。

问题处理:

1.修改sysctl.conf文件中的fs.aio-max-nr参数

[root@test1 sysctl.d]# vi /etc/sysctl.conf

2.激活配置信息(数据库不需要重启操作系统激活后即时生效)

[root@test1 sysctl.d]# sysctl --system

 

处理效果:

    在处理后的几天重新查看ASM的告警日志未发现ORA-27090的报错。

相关bug信息:

Bug 13554729 : CORRECT FS.AIO-MAX-NR = 3145728

Bug 7582159 : ORA-27090 CAN BE REPORTED BUT IS MISSING FROM MESSAGES FILE

 

其他参考资料:

NOTE:1587357.1-Unix AIX、HP-UX、Linux、Solaris和MS Windows操作系统上的Oracle数据库(RDBMS)安装和配置要求快速参考(12.1/12.2/18c/19c)

针对客户当前操作系统环境选择最佳的系统配置可以规避风险。

 

 

 

 

 

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值