AIX Base Config for Oracle DB
AIX 7.1
IMPORTANT: Check installed fileset versions against these documents...Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Solaris and MS Windows Operating Systems Installation and Configuration Requirements Quick Reference (12.1)Oracle Database 12.2 Installation Guide for IBM AIX on POWER Systems (64-bit)
AIX 7.2
IMPORTANT: Check installed fileset versions against these documents...Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Solaris and MS Windows Operating Systems Installation and Configuration Requirements Quick Reference (12.1) Oracle Database 12.2 Installation Guide for IBM AIX on POWER Systems (64-bit)
Filesets
The following operating system filesets are required for all versions of Oracle and AIX:
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat
bos.perf.perfstat
bos.perf.proctools
security.pkcs11 (mandatory for Oracle 18+ only)
xlC.aix61.rte
xlC.rte
gpfs.base (not listed in docs but fails OraCHK)
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:
rsct.basic.rte
rsct.compat.clients.rte
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 environmentKernel 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
The filesystems must be JFS2
Ensure you have dedicated filesystems for datafiles (/u02), online redo log files (/redo) and controlfiles (/controlfile) and ensure those filesystems have the correct mount options for CIO.
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
Data files: Use CIO filesystemio_options=SETALL, and default agblksize (4k); mount with no options.
Redo logs: Create with agblksize of 512 and mount with no options. With SETALL, IBM is doing direct I/O for Redo logs.
Control files: Create with agblksize of 512 and mount with no options. With SETALL, IBM is doing direct I/O for Redo logs.
Archive logs: Mount -o rbrw . Do not use CIO; use the jfs2 rbrw option
Dumps: Mount –o rbrw
The mount option noatime, suggested for Oracle 10g, is no longer required
Oracle Advice
Advice from 960055.1:
Database Files - Use CIO or no mount options for extremely sequential I/O
Redo Log Files - Use CIO or DIO
Controlfiles - Use CIO or DIO
Archive Log Files - Do not use CIO or DIO
Flashback Log Files - Flashback Log files should use CIO, DIO, or rbrw
Oracle Binaries - Do not use CIO or DIO
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)
By default, AIX uses the Loadable Authentication Module (LAM) for identification and authentication purposes.
Recent versions of ORAchk now recommend switching to 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