AIX Base Config for Oracle DB

Always use this document in conjuction with the output from: orachk -profile preinstall

AIX-Oracle-Matrix

Filesets

The following operating system filesets are required for all versions of Oracle and AIX:

lslpp -l bos.adt.base bos.adt.lib bos.adt.libm bos.perf.perfstat bos.perf.libperfstat bos.perf.proctools

lslpp -l security.pkcs11 xlC.aix61.rte xlC.rte gpfs.base

RAC

The following filesets are required for Oracle Real Application Clusters (Oracle RAC) Installations only:

lslpp -l rsct.basic.rte rsct.compat.clients.rte

I/O Completion Ports (IOCP)

Check

lsdev -Cc iocp

Enable

As 'root'...

mkdev -l iocp0

chdev -l iocp0 -P -a autoconfig='available'

Unzip

Oracle 12+ requires Unzip 6.0 or later.

Check

unzip -v | head -1

Install

Download RPM then, as 'root'...

rpm -U unzip-6.0-3.aix6.1.ppc.rpm

XL Fortran Runtime for AIX Fix Pack 10


For Oracle 12.2/18c/19c...Oracle database instance at startup loads libora_netlib.so. This library has dependencies on IBM XL Fortran runtime libraries. If they are not installed on the system, startup fails with the following error:ORA-40238: invalid linear algebra shared library

Check

lslpp -l | grep xlf

For AIX 7100-05-04-1914 you need 16.1.0.1...

  xlfrte                    16.1.0.1  COMMITTED  XL Fortran runtime libraries  xlfrte.aix51       99.99.9999.9999  COMMITTED  Supersede entry, not installed  xlfrte.aix52       99.99.9999.9999  COMMITTED  Supersede entry, not installed  xlfrte.aix53       99.99.9999.9999  COMMITTED  Supersede entry, not installed  xlfrte.aix61              16.1.0.1  COMMITTED  XL Fortran runtime environment

Kernel Parameters

Check

Network Tunables...

no -L tcp_ephemeral_low 

no -L tcp_ephemeral_high 

no -L udp_ephemeral_low 

no -L udp_ephemeral_high

I/O Tunables...

ioo -L aio_maxreqs

Maximum number of User Processes...

lsattr -El sys0 -a maxuproc

Maximum Length of the Command Line...

lsattr -El sys0 -a ncargs

Change

Network Tunables...

no -p -o tcp_ephemeral_low=9000

no -p -o tcp_ephemeral_high=65535

no -p -o udp_ephemeral_low=9000

no -p -o udp_ephemeral_high=65535

I/O Tunables...

ioo -p -o aio_maxreqs=65536

Maximum number of User Processes...

chdev -l sys0 -a maxuproc='16384'

Maximum Length of the Command Line... Set to 128 or longer (this is measured in 4K blocks)

chdev -l sys0 -a ncargs='128'

Concurrent IO (CIO)

Overview

Concurrent I/O (CIO) is a feature of AIX with JFS2 that bypasses the buffer caching and reduces double buffering, where an I/O comes into memory, is stored there and then copied into the application buffer. CIO also removes inode locking for the file system during write operations, so it should only be used where the application takes care of data serialization. For Oracle, this means CIO should be used for database DBF files, redo logs and control files, and flashback log files. It shouldn’t be used for Oracle binaries or archive log files. Use of CIO, for a mixed or random-access workload, can make a significant difference in memory use (reducing paging), CPU utilization (no more copying memory pages between the two memory locations) and performance in general. However, since it bypasses readahead, sequential operations may not perform as well.

Prerequisites

Enabling Concurrent I/O

sqlplus / as sysdba

SHOW PARAMETER filesystemio_options

ALTER SYSTEM SET filesystemio_options=SETALL SCOPE=SPFILE;

SHUTDOWN IMMEDIATE;

STARTUP

SHOW PARAMETER filesystemio_options

NOTE: Set the Oracle parameter filesystemio_options=SETALL, or mount the filesystems (other than dump devices) with the CIO option. It is not necessary to both SETALL and mount filesystems with the CIO option, although no harm is done either way. Metalink note: 272520.1 indicate that mounting with CIO is needed, while IBM believes it is not needed. IBM is working with Oracle to fix the metalink note.NOTE: If using CIO with SETALL, CIO mount or both, you must create separate file systems for redo logs and control files (or a single filesystem for both), with an agblksize of 512 rather than the default 4 KB.NOTE: The ioo parameter fs_fastpath accelerates CIO. It is enabled by default in AIX 6.1 and 7.1.

IBM mount advice for database files

Oracle Advice

Advice from 960055.1:

Filesystems

Assuming disk is provisioned from a SAN where RAID is used to avoid contention... the filesystems should be laid out on disk following these guidelines:


disk1 - /u01 - executables and text log files etc - Not CIOdisk1 - /u02 - datafiles - CIO default agblksize (4k)disk1 - /redo1 - copy 1 of redo logs - CIO agblksize of 512disk1 - /controlfile1 - copy 1 of controlfile - CIO agblksize of 512disk2 - /redo2 - copy 2 of redo logs - CIO agblksize of 512 disk2 - /controlfile2 - copy 2 of controlfile - CIO agblksize of 512disk2 - /fra - recovery files - Mount -o rbrw . Do not use CIO; use the jfs2 rbrw option 

Paging Space

AIX Paging Space

Users & Groups

Groups

mkgroup id=209 dba 

mkgroup id=210 oper 

mkgroup id=205 oinstall

ASM only...

mkgroup id=204 asmadmin

mkgroup id=207 asmdba 

mkgroup id=208 asmoper

Users

mkuser id=211 oracle

chuser groups=oinstall,dba,oper,staff oracle 

chuser pgrp=oinstall oracle 

chuser gecos=oracle@$(hostname -s) oracle 

chuser login=true oracle 

chuser umask=022 oracle 

chuser loginretries=5 oracle 

chuser maxage=12 oracle 

chuser histsize=15 oracle 

chuser fsize=-1 oracle 

chuser cpu=-1 oracle 

chuser data=-1 oracle 

chuser stack=-1 oracle 

chuser nofiles=65536 oracle 

chuser stack_hard=-1 oracle 

chuser nofiles_hard=65536 oracle

Execute as oracle user...

Check if oracle belong to proper groups (dba and oper)

grep dba /etc/group

id oracle

umask

ASM only...

mkuser id=230 grid

chuser groups=oinstall,dba,oper,staff,asmdba oracle

chuser groups=oinstall,asmadmin,asmdba,asmoper,staff,dba,hagsuser grid 

chuser pgrp=oinstall grid 

chuser gecos=grid@$(hostname -s) grid 

chuser login=true grid 

chuser umask=022 grid 

chuser loginretries=5 grid 

chuser maxage=12 grid 

chuser histsize=15 grid 

chuser fsize=-1 grid 

chuser cpu=-1 grid 

chuser data=-1 grid 

chuser stack=-1 grid 

chuser nofiles=65536 grid 

chuser stack_hard=-1 grid 

chuser nofiles_hard=65536 grid

ulimit


https://support.oracle.com/rs?type=doc&id=1587357.1

Soft File Descriptors     at least 1024

Hard File Descriptors     at least 65536

Soft FILE size            -1 (Unlimited)

Soft CPU time             -1 (Unlimited)

Soft DATA segment         -1 (Unlimited)

Soft STACK size           -1 (Unlimited)

Soft Real Memory size     -1 (Unlimited)

Processes (per user)      -1 (Unlimited)  

Pluggable Authentication Module (PAM) 


https://support.oneidentity.com/authentication-services/kb/136434/how-to-enable-aix-to-authenticate-users-using-ssh-via-pam-instead-of-lam

Orachk for AIX Troubleshooting

This section deals with some common AIX specifc warnings...

 WARNING =>  OS Patch IZ87216 is recommended but not installed

Check using...

instfix -ivk IZ87216

If the output shows that all filesets were found, then you can safely ignore this warning.


IZ87216 Abstract: unmapping one LUN on DS5300 causes access to hang on other
    Fileset devices.common.IBM.mpio.rte:7.1.0.2 is applied on the system.    All filesets for IZ87216 were found.

If the filesets are not found then AIX will need to be patched

Bibliography


https://stackoverflow.com/questions/34183957/aix-enable-iocp-without-smitty https://www.ibm.com/developerworks/aix/library/aix-toolbox/alpha.html#U https://docs.oracle.com/en/database/oracle/oracle-database/12.2/axdbi/supported-ibm-aix-6-1-versions.html#GUID-0FFB4D55-2EED-4FE1-B476-0D4832CC995Bhttps://docs.oracle.com/en/database/oracle/oracle-database/19/rnrdm/issues-affect-ibm-aix-on-power.htmlOracle Database (RDBMS) Installation and Configuration Requirements Quick Reference (12.1/12.2/18c) (Doc ID 1587357.1)https://docs.oracle.com/cd/E19575-01/821-0188/gfxyz/index.html ALERT: Database Corruption ORA-600 ORA-7445 errors after applying AIX SP patches AIX 6.1.9.7 to SP08 or AIX 7.1.4.2 to SP03 (Doc ID 2237498.1)Certification Information for Oracle Database on IBM AIX on Power systems (Doc ID 1307544.1)https://docs.oracle.com/en/database/oracle/oracle-database/12.2/axdbn/index.htmlhttps://docs.oracle.com/en/database/oracle/oracle-database/19/axdbi/supported-ibm-aix-7-2-versions.htmlhttps://www.ibm.com/support/pages/node/57666931507249.1 -  IBM POWER7 AIX and Oracle Database performance considerations -- 10g & 11g960055.1 - Recommendations For Using CIO/DIO For Filesystems Containing Oracle Files On AIX272520.1 - Direct I/O or Concurrent I/O on AIX 5Lhttps://support.oracle.com/rs?type=doc&id=1587357.1https://docs.oracle.com/cd/E19575-01/821-0188/gfxyz/index.htmlhttps://docs.oracle.com/cd/E11882_01/install.112/e48740/pre_install.htm#AXDBI1098https://support.oneidentity.com/authentication-services/kb/136434/how-to-enable-aix-to-authenticate-users-using-ssh-via-pam-instead-of-lam