ORA-27090 故障一例


    近期的alert日志中碰到了ORA-27090的錯誤信息。其錯誤提示為Unable to reserve kernel resources for asynchronous disk I/O。依據這個提示來看是跟異步I/O相關的內核參數問題。

以下是這個問題的描寫敘述與解決。

 

1、故障錯誤信息
Wed Sep 10 09:58:17 CST 2014
Errors in file /u01/app/oracle/admin/orclls/bdump/orclls_p000_47020.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: 65536
Wed Sep 10 09:58:17 CST 2014
Errors in file /u01/app/oracle/admin/orclls/bdump/orclls_p002_47024.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: 65536  

 

2、故障分析
#調用oerr,沒有獲得比較有價值的信息,例如以下:
suse11b:oracle:orcl102 > oerr ora 27090
27090, 00000, "Unable to reserve kernel resources for asynchronous disk I/O"
// *Cause:  The system call to reserve kernel resources for asynchronous I/O
//          has failed.
// *Action: Check errno

#進一步查看trace文件。注,當前數據庫版本號為10.2.0.5。OS為suse 11 sp3
suse11a:oracle:orcl101 > more /u01/app/oracle/admin/orclls/bdump/orclls_p002_47024.trc
/u01/app/oracle/admin/orclls/bdump/orclls_p002_47024.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME = /u01/app/oracle/product/10.2/db_1
System name:    Linux
Node name:      suse11a
Release:        3.0.76-0.11-default
Version:        #1 SMP Fri Jun 14 08:21:43 UTC 2013 (ccab990)
Machine:        x86_64
Instance name: orclls
Redo thread mounted by this instance: 1
Oracle process number: 35
Unix process pid: 47024, image:
oracle@suse11a (P002)

*** SERVICE NAME:() 2014-09-10 09:58:17.159
*** SESSION ID:(1072.1) 2014-09-10 09:58:17.159
*** 2014-09-10 09:58:17.159
KCRP: blocks claimed = 0, eliminated = 0
----- Recovery Hash Table Statistics ---------
Hash table buckets = 32768
Longest hash chain = 0
Average hash chain = 0/0 = 0.0
Max compares per lookup = 0
Avg compares per lookup = 0/0 = 0.0
----------------------------------------------
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: 65536
----- Recovery Hash Table Statistics ---------
Hash table buckets = 32768
Longest hash chain = 0
Average hash chain = 0/0 = 0.0
Max compares per lookup = 0
Avg compares per lookup = 0/0 = 0.0
----------------------------------------------
#從trace文件里也沒有獲得比較有價值的信息

 

3、故障解決
#依據ORA-27090: MESSAGE 27090 NOT FOUND; (文檔 ID 579108.1)文檔。我們改動內核參數fs.aio-max-nr
#因為此數據庫為RAC環境下,因此同一時候調整了2個節點,以下為調整后的情形。
suse11a:~ # grep max-nr /etc/sysctl.conf
#fs.aio-max-nr = 1048576
fs.aio-max-nr = 3145728

suse11b:~ # grep max-nr /etc/sysctl.conf
#aio-max-nr = 1048576
fs.aio-max-nr = 3145728

suse11a:~ # sysctl -p
suse11b:~ # sysctl -p

#配置完成后能夠通過cluvy校驗
#幾日后觀察alert日志,未發現該類錯誤。

Check: Kernel parameter for "aio-max-nr"
  Node Name         Current       Configured    Required      Status        Comment    
  ----------------  ------------  ------------  ------------  ------------  ------------
  suse11a           3145728       3145728       1048576       passed         
  suse11b           3145728       3145728       1048576       passed         
Result: Kernel parameter check passed for "aio-max-nr"

 

鵬城DBA總群 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM