Advanced

Asynchronous I/O for Oracle9iR2(9.2.0.5) on Red Hat Fedora Core 2

Posted by dba477 on · 5 comments
LXer; By Boris Derzhavets
Mail this story
Print this story

Brief description of AIO implementation for Oracle9iR2(9.2.0.5) on Red Hat Fedora Core 2

Perform installation procedure exactly as advised in [1].

Check for libaio version:-
# rpm -q libaio
libaio-0.3.99-3

We need libaio-0.3.96-3 to be installed instead of libaio-0.3.99-3
Just get names of two rpms dependent on libaio-0.3.99-3 and remove all three of them from the system.
Issue:-
# rpm -e libaio-0.3.99-3.i386.rpm
view needed names with "failed dependencies" message and put them in one "rpm -e " command.
Install libaio-0.3.96-3:-
# rpm -ivh libaio-0.3.96-3.i386.rpm libaio-devel-0.3.96-3.i386.rpm

Then follow procedure , described in details in [2].

References
1.http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/LINUX_8.shtml
2.http://lxer.com/module/newswire/view/22615/

  Nav
» Read more about: Story Type: Tutorial; Groups: Oracle

» Get new stories by e-mail: nightly or as they are published

« Return to the newswire homepage

  Related stories
» More like this

Comments (5)

Hey People! RedHat support Fedora too.

Remember the big, bad and MS wanabe. They are a confusing outfit.
dba477 Story submitter ·
I would guess in a couple of months RHEL 4 Servers will behave like FC2 behaves right now. Just try Mandrake Linux for the same stuff and have some fun. Mandrake won't confuse outfit
This machine is running Mandrake 9.1 with a dual boot to W2K that remains just in case I have an older email that I might need.

A tower unit of mine has Mandrake 9.2 that will be upgraded to 10.0.

However, regarding large corporations they have different needs. Moreover, they seem to expect a different behaviour by their vendors. If RH should become so crazy that it thinks it is MS version 2 - someone will either wake them up by serving the same kernel under differing terms or they will be history. Fedora is still in its early phases and RHEL was supposed to benefit along with regular users.

Assemble all stuff together and improve style

dba477 Story submitter ·
First: Perform installation procedure exactly as advised in [1]. Check for libaio version has been installed:- # rpm -q libaio libaio-0.3.99-3 We need libaio-0.3.96-3 to be installed (instead of libaio-0.3.99-3) to turn Oracle AIO on Find out two rpms dependent on libaio-0.3.99-3 and remove all three rpms from the system. Then install libaio-0.3.96-3: # rpm -ivh libaio-0.3.96-3.i386.rpm libaio-devel-0.3.96-3.i386.rpm Second: Build "libaio-oracle" as root Download libaio-oracle-0.3.0.tar.gz: Source to libaio-oracle version 0.3.0 from http://oss.oracle.com/projects/libaio-oracle/files

# cd /tmp # gunzip libaio-oracle-0.3.0.tar.gz # tar xf libaio-oracle-0.3.0.tar # cd libaio-oracle-0.3.0 # ./configure # make install

Add to /etc/ld.so.conf

/lib /usr/lib /usr/local/lib

Restart Linux. Run control test: lio_test. Next:

su - oracle Shutdown oracle

mv $ORACLE_HOME/rdbms/lib/skgaio.o \ $ORACLE_HOME/rdbms/lib/skgaio.orig cp /tmp/libaio-oracle-0.3.0/libaio-oracle.o \ $ORACLE_HOME/rdbms/lib/skgaio.o $make -f ins_rdbms.mk async_on $make -f ins_rdbms.mk ioracle

Startup Oracle

Modify screen SPFILE of OEM concole disk_asynch_io=true filesystemio_options=asynch Click "Apply" Restart instance Now Red Hat FC2 kernel (2.6.5) will handle asynchronous I/O requests DBW0,DBW1 daemons (per Oracle Guide Lines two DBWRs should be enough). Actually, to get the work done:- We replaced file skgaio.o taking part in linking Oracle binaries $make -f ins_rdbms.mk async_on $make -f ins_rdbms.mk ioracle by /tmp/libaio-oracle-0.3.0/libaio-oracle.o

References 1.http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/LINUX_8.shtml

Verifying "libaio-oracle" installation status – "OK"

Probably,the best option would be running "oratest"

# cd /tmp/libaio-oracle-0.3.0 # ./oratest > oratest.log 2>&1 # cat oratest.log

Starting write() test

Allocating write buffer... done Opening file write_test... done Truncating to length 1879048192... done Writing blocks: ........................................ 1638400 bytes ........................................ 3276800 bytes ........................................ 4915200 bytes ........................................ 6553600 bytes ........................................ 8192000 bytes ........................................ 9830400 bytes ........................................ 11468800 bytes

"Output removed"

........................................ 1872691200 bytes ........................................ 1874329600 bytes ........................................ 1875968000 bytes ........................................ 1877606400 bytes ................................... 1879048192 bytes write() test complete

Starting aio_suspend() test

Allocating write buffer... done Opening file suspend_test... done Truncating to length 1879048192... done Writing blocks: ........................................ 1638400 bytes ........................................ 3276800 bytes ........................................ 4915200 bytes ........................................ 6553600 bytes ........................................ 8192000 bytes ........................................ 9830400 bytes ........................................ 11468800 bytes ........................................ 13107200 bytes

"Output removed"

........................................ 1872691200 bytes ........................................ 1874329600 bytes ........................................ 1875968000 bytes ........................................ 1877606400 bytes ................................... 1879048192 bytes aio_suspend() test complete

Starting aio_reap() test

Page size is 4096 Allocating write buffer... done Opening file reap_test... done Truncating to length 1879048192... done Writing blocks: ........................................ 1638400 bytes ........................................ 3276800 bytes ........................................ 4915200 bytes ........................................ 6553600 bytes ........................................ 8192000 bytes ........................................ 9830400 bytes ........................................ 11468800 bytes

"Output removed"

........................................ 1872691200 bytes ........................................ 1874329600 bytes ........................................ 1875968000 bytes ........................................ 1877606400 bytes ................................... 1879048192 bytes aio_reap() test complete

Post a comment

A free account is needed to post. Write your comment here first: your text is kept in this browser while you sign up or log in, and is waiting for you when you come back.

Your message:
|||||
10
Markdown: **bold**, *italic*, [text](https://link), - lists, > quotes, $x^2$ for math. Formatting help

Sign up and post (it is free)  or  Log in and post