刚解决了一个异步io的问题,还是专门描述一下Oracle中设置异步IO的方式。
首先要检查操作系统上,异步io的相关包是否已经安装,如果没有的话,通过rpm进行安装,并检查系统上异步io的参数设置:[oracle@localhost ~]$ rpm-qa|grep aio
libaio-0.3.107-10.el6.x86_64
libaio-devel-0.3.107-10.el6.x86_64[oracle@localhost ~]$ more/proc/sys/fs/aio-max-nr1048576然后检查数据库在链接时是否已经加载了aio的包:[oracle@localhost ~]$/usr/bin/ldd $ORACLE_HOME/bin/oracle|grep libaio
libaio.so.1=>/lib64/libaio.so.1(0x0000003e13000000)如果没有看到libaio的包,说明Oracle没有链接aio,那么这时就需要重新make oracle的可执行文件,9i的方法为:make-f ins_rdbms.mk async_on
make-f ins_rdbms.mk ioracle10g以后的方法为:make PL_ORALIBS=-laio-f ins_rdbms.mk async_on编译完成后,操作系统的设置完成,还需要设置数据库的初始化参数:SQL>SHOWparameter disk_asynch_io
NAMETYPEVALUE------------------------------------ -------------------------------- --------------------disk_asynch_ioBOOLEANTRUESQL>SHOWparameter filesystemio_options
NAMETYPEVALUE------------------------------------ -------------------------------- ------------------filesystemio_options stringNONE对于裸设备而言,这样的设置就足够了,但是对于文件系统而言,还需要讲filesystemio_options设置为ASYNCH并重启数据库:SQL>ALTERSYSTEMSETFILESYSTEMIO_OPTIONS=ASYNCH SCOPE=SPFILE;
System altered.由于编译oracle可执行文件的时候也要关闭数据库,合理的安排设置参数的顺序,可减少数据库的重启次数。Oracle 9.2.0.4 数据库truncate表-ORA-00600:[ktsircinfo_num1之看似bug?Oracle中强行断开用户连接的方法相关资讯 oracle数据库教程
- Oracle raw数据类型介绍 (01/29/2013 10:05:53)
- 监听器注册与ORA-12514 错误分析 (11/13/2012 14:30:08)
- Oracle SQL的cursor理解 (11/13/2012 14:16:17)
| - Oracle 如何强制刷新Buffer Cache (01/29/2013 10:02:46)
- dblink致Oracle库的SCN变成两库的 (11/13/2012 14:24:41)
- Linux操作系统下完全删除Oracle数 (11/13/2012 08:25:52)
|
本文评论 查看全部评论 (0)