知识大全 不同平台的数据库异步I/O的使用

Posted

篇首语:你今天的日积月累,早晚会成为别人的望尘莫及。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 不同平台的数据库异步I/O的使用相关的知识,希望对你有一定的参考价值。

不同平台的数据库异步I/O的使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  一般说来 异步I/O是和同步I/O相比较来说的 如果是同步I/O 当一个I/O操作执行时 应用程序必须等待 直到此I/O执行完 相反 异步I/O操作在后台运行 I/O操作和应用程序可以同时运行 提高了系统性能; 使用异步I/O会提高I/O流量 如果应用是对裸设备进行操作 这种优势更加明显 因此象数据库 文件服务器等应用往往会利用异步I/O 使得多个I/O操作同时执行      文件集的安装  要在aix平台上使用异步I/O特征 系统必须安装有文件集bos rte aio 可以通过如下命令检查之:  lslpp l bos rte aio  然后再通过smitty(smit)使得异步I/O可用  #smit chgaio  STATE to be configured at system restart available     如何确定是否需要使用异步I/O  a 使用VMSTAT命令查看列wa 如何其值超过 % 则使用;  b 使用命令iostat * * 如果%tm_act超过 % 则使用;  值得注意的是 在SMP系统中 vmstat的值us id wa列是所有处理器之间的平均值 但是每个处理器的i/o等待值却不是平均值 而是一个全局的统    计数值    当前aio服务器的数目  pstat a | grep aios | wc l   如何设置aio 服务器  一般有三个规则可以用来决定因素aio的数目  a 限定MAXIMUM等于十倍的当前使用的物理磁盘数 MINIMUM等于一半的MAXIMUM数;  b 设置MAXIMUM为 MINIMUM为默认值 监控系统正常的负荷情况 过一段时间后 再进行调整如下:  MAXIMUM=当前运行的aio数+   MINIMUM=当前运行的aio数   c 在最高I/O活动开始之前 使用vmstat s看结果中的iodones 隔一时间段再执行 查看二次iodones之差值 便可以知道在这个时间段内有多少个物理I/O发生了 如果便可以考虑增加MAXIMUM数再进行观察调整   异步I/O的几个参数  可以使用chdev或是smit来修改有关AIO的参数 主要考虑如下几个  MINIMUM number of servers :指定分配给异步I/O进程的最少内核进程数   MAXIMUM number of servers :指定分配给异步I/O进程的最大内核进程数  Maximum number of REQUESTS :指定能同一时间分配的最大数目的异步I/O请求数 它包括进程中的请求 也包括等待中的请求数 最大数不能小于MAXIMUM number of servers 它定义在/usr/include/sys/limits h中   Server PRIORITY:指定分析给异步I/O进程的优先级 建议用默认值   STATE to be configured at system     restart:指定系统初始化时 异步I/O进程的状态 可能值是 )defined(处于定义状态且不可用) )available(可用)STATE of FastPath:如果选择disable 则表明强迫所有的I/O活动都通过异步内核进程 默认是enable     此平台上的数据库 如oracle中使用异步i/o 则需要设置参数disk_asynch_io = TRUE就可以了     Hp ux使用Aio的补丁要求  b HP UX i的补丁要求为   PHKL_ vm preemption point mlock/async_io  PHKL_ asyncio driver patch  使用swlist l product检查   创建aio的字符设备  a 建立aio字符设备  #/sbin/mknod /dev/async c x   b 调整设备的属主 这个例中假定用户为oracle 组为dba  #chown oracle:dba /dev/async  c 调整设备的权限位  #chmod /dev/async   Hp ux要要调整的内核参数  调整内核参数据需要使用root用户  a 把asyncdsk置为in  sam > Kernel Configuration > Drivers >asyncdsk调整为in  b 调整max_async_ports参数  这个参数限定的是同时使用/dev/async设备的最大进程数 对于Oracle这个参数应大于等于init< sid> ora中的processes+后台的进程数 当max_    async_ports的值达到时 其余的进程将采用同步IO的方式   c 调整set aio_max_ops参数  这个参数所限定的是在任意一个时间点排队的Aio操作的最大的数目 一般保持默认值就可以 可以用glance监测一下   d 调整fs_async参数  这个参数表明的是对文件系统的写是否采用Aio的方式 设定fs_async= 指定对于文件系统写不用Aio 设定fs_async= 则指定使用aio的方式 Ora    cle不建议将这个什设置为    其它方面设置  值得注意的是要为oracle用户的组(一般为dba)设定MLOCK的权限 否则在数据库启动会报错或在库运行时会出现莫名其妙的数据库hang的现象     具体说明如下  a 有二个命令getprivgrp(检查) setprivgrp(设置)  eg :检查dba组是否有MLOCK的权限  root#getprivgrp dba  eg :设定dba组的MLOCK的权限  roolt#setprivgrp dba MLOCK  b 也可以把设定加入配置文件中 这样在下次启动时就自动生效了   在/etc/privgroup中加入如下的一行   dba MLOCK   如果privgroup不存在 可以编辑一个      i 及以后的版本 :在init< sid> ora中设定disk_asynch_io = TRUE   检查一下aio是否生效了  #fuser /dev/async   有进程列出来说明aio已经生效了    在hp 上使用异步I/O时可能还有些问题 会出现一些ora 的错误 但是hp i后应没有问题了 cha138/Article/program/Oracle/201311/16605

相关参考

知识大全 测量磁盘I/O

测量磁盘I/O  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!我怎样分离OracleI/O来使得性能

知识大全 分析 Java I/O 的工作机制

分析JavaI/O的工作机制  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  网络I/O优化  网

知识大全 非阻塞I/O简介

Java网络编程从入门到精通(31):非阻塞I/O简介  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 一个非阻塞I/O的例子

Java网络编程从入门到精通(32):一个非阻塞I/O的例子  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看

知识大全 调整 JavaTM I/O 性能

调整JavaTMI/O性能  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  调整JavaTMI/O

知识大全 减少ORACLE中的磁盘I/O

减少ORACLE中的磁盘I/O  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  使用Muliple

I/O柜端子排拆线接线作业的危险点和控制措施

I/O柜端子排拆线接线作业的危险点和控制措施如下:步骤或活动:I/O柜端子拆、接线危险点工具不合格或使用不当(伤害类型:触电)控制措施1、使用工具前应进行检查,不完整的工具不准使用。2、认真检查仪器仪

I/O柜端子排拆线接线作业的危险点和控制措施

I/O柜端子排拆线接线作业的危险点和控制措施如下:步骤或活动:I/O柜端子拆、接线危险点工具不合格或使用不当(伤害类型:触电)控制措施1、使用工具前应进行检查,不完整的工具不准使用。2、认真检查仪器仪

知识大全 Java I/O流

JavaI/O流  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  面向字节的流类  一预定义的流对

知识大全 检测解决SQLServer延迟阻塞I/O问题

检测解决SQLServer延迟阻塞I/O问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要