首页 / 数据库 / MySQL / Oracle 10gR2在RHEL 5下开启异步IO
记录一下Oracle 10gR2在RHEL 5下开启异步IO步骤平台:RedHat Enterprise Linux 5 64bit,Oracle 10gR2 10.2.0.4 64bit1、首先用root用户安装以下必要的rpm包# rpm -Uvh libaio-0.3.106-3.2.x86_64.rpm# rpm -Uvh libaio-devel-0.3.106-3.2.x86_64.rpm2、在系统级支持异步I/O 与[Note 225751.1]介绍的在RHEL 3里面设置异步IO不同,不需要设置aio-max-size,而且"/proc/sys/fs"路径下也没有这个文件。因为从2.6 kernel开始,已经取消了对IO size的限制[Note 549075.1]。另外根据[Note 471846.1],Oracle建议将aio-max-nr的值设置为1048576或更高。# echo > /proc/sys/fs/aio-max-nr 1048576要永久修改这个内核参数,需要在/etc/sysctl.conf加上下面这句fs.aio-max-nr = 1048576
使参数生效
#/sbin/sysctl -p3、在数据库级启用异步I/O 首先修改数据库参数。与[Note 225751.1]在RHEL 3里面设置异步IO不同,Oracle10gR2默认是打开了对异步IO的支持的,不需要重新编译数据库软件。在"$ORACLE_HOME/rdbms/lib"路径下,也没有"skgaioi.o"这个文件。在某些情况下,Oracle无法将IO行为或事件报告给操作系统[Note 365416.1],因此需要做以下操作。这里开始换成oracle用户SQL> alter system set disk_asynch_io=TRUE scope=spfile;SQL> alter system set filesystemio_options=asynch scope=spfile;SQL>shutdown immediate$ cd $ORACLE_HOME/rdbms/lib$ ln -s /usr/lib/libaio.so.1 skgaio.o$ make PL_ORALIBS=-laio -f ins_rdbms.mk async_onSQL>startup 在Oracle10gR2中AIO默认已经是开启的了。可以通过ldd或者nm来检查oracle是否已经启用了AIO支持,有输出代表已经启用。[oraprod@db01 ~]$ /usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio libaio.so.1 => /usr/lib64/libaio.so.1 (0x00002aaaac4a9000)[oraprod@db01 ~]$ /usr/bin/nm $ORACLE_HOME/bin/oracle | grep io_getevent w io_getevents@@LIBAIO_0.44、检查异步I/O是否在使用 根据[Note 370579.1],可以通过查看slabinfo统计信息查看操作系统中AIO是否运行,slab是Linux的内存分配器,AIO相关的内存结构已经分配,kiocb值的第二列和第三列非0即是已使用。与kernel 2.4.x不同,没有显示kiobuf,因为从kernel 2.5.43开始,kiobuf已经从内核中被移除。$ cat /proc/slabinfo | grep kiokioctx 64 110 384 10 1 : tunables 54 27 8 : slabdata 11 11 0kiocb 13 315 256 15 1 : tunables 120 60 8 : slabdata 21 21 44Oracle 11g 在RedHat Linux 5.8_x64平台的安装手册 http://www.linuxidc.com/Linux/2014-07/104745.htm Linux-6-64下安装Oracle 12C笔记 http://www.linuxidc.com/Linux/2013-07/86805.htm 在CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htm Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm 更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址