`
rq2_79
  • 浏览: 240298 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle10gR2如何在RHEL 5下开启异步IO

阅读更多

异步I/O的优 点:异步I/O是和同步I/O相比较来说的,如果是同步I/O,当一个I/O操作执行时,应用程序必须等待,直到此I/O执行完。相反,异步I/O操作在 后台运行,I/O操作和应用程序可以同时运行,提高了系统性能; 使用异步I/O会提高I/O流量,如果应用是对裸设备进行操作,这种优势更加明显, 因此像数据库,文件服务器等应用往往会利用异步I/O,使得多个I/O操作同时执行。
  前段时间也在公司的服务器上折腾过,不过搜到的文档对应的平台都是Oracle9iR2在RHEL 3、AIX、HP-UNIX,测试半天未果。今天在My Oracle Support上找到了好几篇文档,终于搞明白了这个问题。

平台:Redhat Enterprise Linux 5 64bit,Oracle 10gR2 10.2.0.4 64bit

1、首先用root用户安装以下必要的rpm包

# rpm -Uvh libaio-0.3.106-3.2.i386.rpm
# rpm -Uvh libaio-0.3.106-3.2.x86_64.rpm
# rpm -Uvh libaio-devel-0.3.106-3.2.i386.rpm
# rpm -Uvh libaio-devel-0.3.106-3.2.x86_64.rpm

2、在系统级支持异步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

3、在数据库级启用异步I/O
  首先修改数据库参数。与[Note 225751.1] 在RHEL 3里面设置异步IO不同,Oracle10gR2默认是打开了对异步IO的支持的,不需要重新编译数据库软件。在'$ORACLE_HOME/rdbms /lib'路径下,也没有'skgaioi.o'这个文件。在某些情况下,Oracle无法将IO行为或事件报告给操作系统[Note 365416.1] ,因此需要做以下操作。

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_on
SQL>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.4

4、检查异步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 kio
kioctx 64 110 384 10 1 : tunables 54 27 8 : slabdata 11 11 0
kiocb 13 315 256 15 1 : tunables 120 60 8 : slabdata 21 21 44
$

分享到:
评论

相关推荐

    Requirements For Installing Oracle10gR2 On RHEL 5&OEL 5 (x86_64)

    本文档详细介绍了在Red Hat Enterprise Linux(RHEL)5和Oracle Enterprise Linux(OEL)5(x86_64架构)上安装Oracle 10g Release 2数据库的具体要求。这些要求包括硬件配置、内核版本、以及必要的系统设置等关键...

    Oracle11GR2 For RHEL6安装手册

    RHEL6及Oracle11GR2安装说明

    rhel5+oracle10gr2安装配置

    本文将为您详细介绍如何在RHEL5环境中安装和配置Oracle10gR2数据库管理系统。以下是安装配置的详细步骤和知识点: 前提条件 在开始安装之前,需要确保您的Linux操作系统已经安装好,并且磁盘分区满足安装要求。本文...

    Oracle 11gR2 for RHEL6 安装手册含备份方案超详细-魏伟新版

    在本章节中,我们将会详细介绍Oracle 11gR2在RHEL6上的安装环境配置。为了确保Oracle数据库能够稳定运行,我们需要对操作系统进行一系列的检查与配置。 **操作系统:** Linux 6.8 **数据库版本:** Oracle 11.2.0.4 ...

    Oracle 11gR2 RAC RHEl6 安装规范和手册

    ### Oracle 11gR2 RAC 在 RHEL 6 安装规范及手册关键...以上内容详细介绍了 Oracle 11gR2 RAC 在 RHEL 6 环境下的安装规范和手册中的关键知识点。遵循这些步骤和技术细节,可以有效地完成安装并确保系统的稳定运行。

    oracle 11gR2 for RHEL5.5 x86_64的补丁包

    在Red Hat Enterprise Linux (RHEL) 5.5 x86_64环境下安装Oracle 11gR2,需要特别注意的是,由于RHEL 5.5已经过时,因此可能需要额外的兼容性和安全补丁来确保数据库的稳定运行。 首先,让我们详细了解一下Oracle ...

    oracle 10g rac on rhel5.5 相关包

    在Red Hat Enterprise Linux 5.5 (RHEL5.5) 上部署Oracle 10g RAC,需要一系列特定的软件包和配置步骤。以下是对提供的文件名列表及其对应知识点的详细解释: 1. **ocfs2-2.6.18-194.el5-debuginfo-1.4.7-1.el5.i...

    CentOS下Oracle10gR2之静默安装

    在CentOS环境下进行Oracle 10g R2的静默安装和手工建库的过程中,涉及到诸多知识点和操作步骤。以下是对这些知识点的详细说明: 1. 安装前的准备工作 在开始安装Oracle 10g R2之前,需要做好一系列的准备工作,以...

    ORACLE 12gR2 RHEL7 SILENT install 单机静默安装 详细步骤

    本文档旨在指导用户完成 Oracle 12gR2 在 RHEL7 操作系统上的静默安装。该安装过程分为准备工作、安装配置前准备、安装 Oracle 软件、配置 Oracle 实例、创建数据库等步骤。 一、准备工作 1.1 操作系统安装文件...

    RHEL6上安装Oracle11gR2的手册(图文并茂)

    在Red Hat Enterprise Linux 6(RHEL6)环境中部署Oracle 11g Release 2(Oracle11gR2)数据库是企业级应用中的常见需求。本文将详细介绍在RHEL6系统上安装Oracle11gR2的具体步骤,从创建YUM源、安装依赖软件包、...

    deploying-oracle-11gr2-rac-on-rhel6_1

    ### Oracle 11g R2 RAC 在 RHEL 6 中部署最佳实践 #### 概述 Oracle 11g R2 RAC (Real Application Clusters) 是 Oracle 数据库的一个重要版本,它提供了高可用性和负载均衡功能。RHEL (Red Hat Enterprise Linux) ...

    create database - Oracle11gr2 on rhel 手动建库

    Oracle 11g R2 在 Red Hat Enterprise Linux (RHEL) 上手动创建数据库涉及一系列步骤,这些步骤确保了系统的正确配置和数据库实例的稳定运行。以下是详细的创建过程: 1. **指定实例标识符 (SID)**:SID 是 Oracle ...

    Oracle10gR2在Linux 5.4安装

    介绍在RHEL5.4上安装Oracle 10gR2 包含全部的问题解决. 一站式的安装手记 本人原创,欢迎提宝贵意见.

    Oracle 11gR2 RAC(ASM) on RHEL6.4安装流程

    ### Oracle 11gR2 RAC (ASM) on RHEL6.4 安装流程详解 #### 环境概述 本文档旨在详细介绍Oracle 11gR2 RAC (ASM) 在Red Hat Enterprise Linux Server 6.4 (Santiago) 上的安装流程。RAC (Real Application ...

    rhel4安装oracle11gR2

    - 完成安装后,需要配置Oracle环境变量,通常是在用户主目录下的`.bash_profile`文件中添加如下内容: ``` export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 ...

    rhel4_u7_oracle10gr2_arcsde93_64完整安装.doc

    文档标题“rhel4_u7_oracle10gr2_arcsde93_64完整安装.doc”揭示了本文档将详细介绍如何在Red Hat Enterprise Linux 4 (RHEL4) Update 7环境下安装Oracle 10g Release 2 (10gR2)数据库以及ArcSDE 9.3 for 64位系统。...

    Linux oracle 11gR2依赖包全套

    在Linux环境下部署Oracle 11gR2,需要一系列特定的依赖包来确保系统的稳定运行和功能完整。这个“Linux oracle 11gR2依赖包全套”包含了所有必要的组件,帮助用户顺利完成安装过程。 首先,让我们了解一下Oracle 11...

    rhel6.0安装Oracle 11gR2

    如果安装测试通过,意味着Oracle 11gR2已成功在RHEL6.0上部署。 需要注意的是,整个安装过程都是在虚拟机中完成的,使用的是VMware Workstation 9.0版本。这说明了安装过程可以在虚拟环境中进行,为没有实体服务器...

Global site tag (gtag.js) - Google Analytics