Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

12.2. Relinking Oracle 10g to Enable Asynchronous I/O Support

Ensure that for 10g Release 1 and 2 the libaio and libaio-devel RPMs are installed on the system:
# rpm -q libaio libaio-devel
libaio-0.3.96-5
libaio-devel-0.3.96-5
If you relink Oracle for asynchronous I/O without installing the libaio RPM, then you will get an error message similar to this one:
SQL> connect / as sysdba
oracleorcl: error while loading shared libraries: libaio.so.1: cannot open \
shared object file: No such file or directory
ERROR:
ORA-12547: TNS:lost contact
The libaio RPMs provide a native Linux asynchronous I/O API. In other words this is a kernel accelerated asynchronous I/O for the POSIX asynchronous I/O facility.

Note

10g Release 2 is shipped with asynchronous I/O support enabled. This means that 10g Release 2 does not need to be relinked. However, there is a bug in Oracle 10.1.0.2 that causes asynchronous I/O not to be installed correctly which can result in poor DB performance, see Bug:3438751 and Note:270213.1.
To relink Oracle 10g R1 for asynchronous I/O, execute the following commands:
# shutdown Oracle
SQL> shutdown

su - oracle
$ cd $ORACLE_HOME/rdbms/lib
$ make PL_ORALIBS=-laio -f ins_rdbms.mk async_on
If asynchronous I/O needs to be disabled, run the following commands:
# shutdown Oracle
SQL> shutdown

su - oracle
$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk async_off