1. Установил kernel-2.4.20-35.9.i686.rpm
рестартовал Red Hat Linux 9 Server2. Установил libaio-0.3.93-4.src.rpm (с лицензинного дистрибутива
RHL 9).3. Отредактировал 3 исходных файла следуя:-
http://developer.osdl.org/daniel/libaio/patch.libaio-0.3-93.fix
4.Пересобрал и переустановил libaio-0.3.93-4.rpm
5.Успешно откомпилировал:-
make -f ins_rdbms.mk async_on
make -f ins_rdbms.mk ioracleЗамечание:
Компиляция завершалась аварийно до установки патча:-
libaio давала неразрешенные ссылки.6. Добавил к init.ora файлам:-
disk_asynch_io=true
filesystemio_options=asynch$lsnrctl start (OK)
Попытка стартовать Oracle:-
[oracle@ServerDFW dbs]$ dbstart
SQL*Plus: Release 9.2.0.4.0 - Production on Tue Sep 6 21:44:12 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> oracledata01: relocation error: oracledata01: symbol io_queue_init, version LIBAIO_0.4 not defined in file libaio.so.1 with link time reference
ERROR:
ORA-12547: TNS:lost contact
SQL> oracledata01: relocation error: oracledata01: symbol io_queue_init, version LIBAIO_0.4 not defined in file libaio.so.1 with link time reference
oracledata01: relocation error: oracledata01: symbol io_queue_init, version LIBAIO_0.4 not defined
in file libaio.so.1 with link time reference
ORA-12547: TNS:lost contact
SQL>SQL*Plus: Release 9.2.0.4.0 - Production on Tue Sep 6 21:44:13 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> oraclesrvdata: relocation error: oraclesrvdata: symbol io_queue_init, version LIBAIO_0.4 not defined in file libaio.so.1 with link time reference
ERROR:
ORA-12547: TNS:lost contact
SQL> oraclesrvdata: relocation error: oraclesrvdata: symbol io_queue_init, version LIBAIO_0.4 not defined in file libaio.so.1 with link time reference
oraclesrvdata: relocation error: oraclesrvdata: symbol io_queue_init, version LIBAIO_0.4 not defined in file libaio.so.1 with link time reference
ORA-12547: TNS:lost contact
SQL>Для исходного ядра результаты те же ( kernel-2.4.20-8)
Насколько я могу судить: AIO - это проблема Red Hat Linux 9.
Oracle9iR2 демонстрирует не работоспособсть АIO
под kernel-2.4.20-35.9 c установленным libaio-0.3.93-4.rpm
Активирование асинхронного ввода/вывода в среде Red Hat Linux 9.
Линкование Oracle9iR2 для использования AIOУстановка нового ядра с поддержкой AIO и патча для разделяемой библиотеки libaio.so
1. rpm -i kernel-2.4.20-35.9.i686.rpm с http://atrpms.com
2. rpm -i libaio-0.3.93-4.src.rpm
3. cd /usr/src/redhat/SOURCES
4. gunzip libaio-0.3.93.tar.gz
5. tar xf libaio-0.3.93.tar -C /tmp
6. cd /tmp/libaio-0.3.93/src
7. Корректировка файлов (следуя [1],[2]) :compat-0_1.c
io_queue_init.c
io_submit.c
8. cd /tmp
9. tar cvf libaio-0.3.93.tar libaio-0.3.93
10. gzip libaio-0.3.93.tar
11. cp libaio-0.3.93.tar.gz /usr/src/redhat/SOURCES
12. rpmbuild -ba /usr/src/redhat/SPECS/libaio.spec
13. cd /usr/src/redhat/RPMS/i386
14. rpm -i libaio-0.3.93-4.i386.rpm
15. Проверьте наличие файла /usr/lib/libaio.so.1
16. cd /lib
17. ln -s /usr/lib/libaio.so.1 libaio.soЛинкование Oracle9iR2 для использования AIO
Shutdown Oracle:-
1. cd $ORACLE_HOME/rdbms/lib
2. make -f ins_rdbms.mk async_on
3. make -f ins_rdbms.mk ioracle
4. cd $ORACLE_HOME/dbsДобавьте к файлам init.ora инстансов Oracle, установленных на машине :-
disk_asynch_io=true
filesystem_io=asynchStartup Oracle
Литература.
1.http://www.hyperic.net/support/tech-notes/oracle-setup.htm
2.http://developer.osdl.org/daniel/libaio/patch.libaio-0.3-93.fix