客户的数据库IO负载较重,检查后发现并未设置异步IO。

整个数据库的负载都集中在IO相关的等待上:

Top 5 Timed Foreground Events

Event

Waits

Time(s)

Avg   wait (ms)

%   DB time

Wait   Class

log   file sync

697,116

70,128

101

36.29

Commit

db   file sequential read

2,982,135

54,498

18

28.20

User   I/O

db   file scattered read

754,680

38,741

51

20.05

User   I/O

free   buffer waits

35,410

20,560

581

10.64

Configuration

DB   CPU

6,172

3.19

检查后发现,当前系统并未使用异步io:

[oracle@localhost ~]$ cat /proc/slabinfo | grep kio

kioctx         37   140   384   10   1 : tunables   54   27   8 : slabdata    14    14     0

kiocb           0     0   256   15   1 : tunables  120   60   8 : slabdata     0     0     0

[oracle@localhost ~]$ cat /proc/slabinfo | grep kio

kioctx         37   140   384   10   1 : tunables   54   27   8 : slabdata    14    14     0

kiocb           0     0   256   15   1 : tunables  120   60   8 : slabdata     0     0     0

返回结果中kiocp对应的前两项为0,说明系统中没有使用异步io。

检查显示oracle已经链接了aio的包:

[oracle@localhost ~]$ /usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio

libaio.so.1 => /lib64/libaio.so.1 (0x0000003e13000000)

[oracle@localhost ~]$ /usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio

libaio.so.1 => /lib64/libaio.so.1 (0x0000003e13000000)

而数据库中检查发现filesystemio_options设置有误:

SQL> show parameter disk_asynch_io

NAME                                 TYPE                             VALUE

------------------------------------ -------------------------------- --------------------

disk_asynch_io                       BOOLEAN                          TRUE

SQL> SHOW parameter filesystemio_options

NAME                                 TYPE                             VALUE

------------------------------------ -------------------------------- -------------------

filesystemio_options                 string                           NONE

NAME                                 TYPE                             VALUE

------------------------------------ -------------------------------- --------------------

disk_asynch_io                       boolean                          TRUE

SQL> show parameter filesystemio_options

NAME                                 TYPE                             VALUE

------------------------------------ -------------------------------- -------------------

filesystemio_options                 string                           none

当前使用的是文件系统,因此需要将filesystemio_options设置为asynch,才能开启异步io:

SQL> ALTER SYSTEM SET FILESYSTEMIO_OPTIONS = ASYNCH SCOPE = SPFILE;

System altered.

SQL> SHUTDOWN IMMEDIATE

DATABASE closed.

DATABASE dismounted.

ORACLE instance shut down.

SQL> STARTUP

ORACLE instance started.

Total System Global Area 6.0264E+10 bytes

Fixed SIZE 2242912 bytes

Variable SIZE 2147485344 bytes

DATABASE Buffers 5.7982E+10 bytes

Redo Buffers 131960832 bytes

DATABASE mounted.

DATABASE opened.

SQL>

SQL> ALTER SYSTEM SET FILESYSTEMIO_OPTIONS = ASYNCH SCOPE = SPFILE;

System altered.

SQL> SHUTDOWN IMMEDIATE

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> STARTUP

ORACLE instance started.

Total System Global Area 6.0264E+10 bytes

Fixed Size 2242912 bytes

Variable Size 2147485344 bytes

Database Buffers 5.7982E+10 bytes

Redo Buffers 131960832 bytes

Database mounted.

Database opened.

SQL>

再次检查系统上异步io的设置,发现异步io已经启动:

[oracle@localhost ~]$ more /proc/slabinfo |grep kio

kioctx       130   160   384   10   1 : tunables   54   27   8 : slabdata    16    16     0

kiocb         16    30   256   15   1 : tunables  120   60   8 : slabdata     2     2     1

[oracle@localhost ~]$ more /proc/slabinfo |grep kio

kioctx       130   160   384   10   1 : tunables   54   27   8 : slabdata    16    16     0

kiocb         16    30   256   15   1 : tunables  120   60   8 : slabdata     2     2     1

可以看到,目前异步IO已经生效。

linux oracle io 查看,Linux上Oracle是否使用异步io的诊断相关推荐

  1. linux篇:查看Linux版本号

    一.查看Linux内核版本命令(两种方法): 1.cat /proc/version [root@S-CentOS home]# cat /proc/version Linux version 2.6 ...

  2. Linux Shell CentOS 查看Linux 操作系统 相关信息

    文章目录 Linux Shell CentOS 查看Linux 操作系统 相关信息 相关阅读 1.代码 2.结果 Linux Shell CentOS 查看Linux 操作系统 相关信息 相关阅读 L ...

  3. linux 查oracle版本号,查看linux中oracle版本号的方法总结

    在Linux系统下,我们通过以下的方法可以查看到Oracle的版本号.下面由学习啦小编整理了查看linux中oracle版本号的方法总结,希望对你有帮助. 查看linux中oracle版本号的方法总结 ...

  4. centos查看oracle版本,查看linux系統版本信息(Oracle Linux、Centos Linux、Redhat Linux、Debian、Ubuntu)...

    一.查看Linux系統版本的命令(3種方法) 1.cat /etc/issue,此命令也適用於所有的Linux發行版. [root@S-CentOS home]# cat /etc/issue Cen ...

  5. linux用命令查网口速率,Linux命令行查看当前上传/下载速度

    用的操作系统是Ubuntu Server 18.04,所以在网上查阅的在linux命令行查看实时网速不适用,然后稍作修改就可以用在Ubuntu Server 18.04里了. 脚本如下: $ cat ...

  6. linux内核_查看Linux内核版本

    您可能因多种原因需要确切知道GNU / Linux操作系统上运行的内核版本. 也许您正在调试与硬件相关的问题,或者了解影响旧内核版本的新安全漏洞,并且您想知道您的内核是否易受攻击. 无论是什么原因,从 ...

  7. 【转】如何查看linux版本 如何查看LINUX是多少位

    原文网址:http://blog.csdn.net/hongweigg/article/details/7192471 一.如何得知自己正在使用的linux是什么版本呢,下面的几种方法将给你带来答案! ...

  8. 怎么看linux Java版本,查看linux的java版本信息

    查看linux的java版本信息 [2021-02-10 01:02:40]  简介: linux系统查看jdk版本的方法是:可以通过[java -version]命令来查看.具体方法是:1.打开终端 ...

  9. 如何查看linux版本 如何查看LINUX是多少位

    一.如何得知自己正在使用的linux是什么版本呢,下面的几种方法将给你带来答案! 1. 查看内核版本命令: 1) [root@q1test01 ~]# cat /proc/version Linux ...

最新文章

  1. PHP+XML留言板
  2. fou循环 php 剩余次数_php for 循环语句使用方法详细说明
  3. 2018-2019-1 20165236《信息安全系统设计基础》第八周学习总结
  4. 2014图灵技术图书最受欢迎TOP15
  5. [日志]说一个人长的丑!如何说?
  6. IntelliJ IDEA使用技巧(三)——Debug 篇
  7. Linux学习之CentOS(一)--CentOS6.5环境搭建
  8. 用 Python 的 selenium扩展 驱动 火狐 谷歌 浏览器
  9. 跟大家分享一下牛人常用的资源(牛客网 )!
  10. hub设备_铝合金机身,既是HUB也是充电器,ORICO A3H7体验
  11. 小学听力测试英语软件,小学英语听力测试
  12. NNDL 实验六 卷积神经网络(4)ResNet18实现MNIST
  13. Android 修改AlertDialog原生setPositiveButton的字体颜色背景颜色大小边距位置
  14. python编辑函数求n阶乘fact_python中fact函数的用法
  15. LZJ的Python第二次打卡
  16. IT公司盈利模式分析
  17. H5跳转微信公众号解决方案
  18. Mybatis面试合集
  19. 参考文献格式生成器(GB/T 7714-2015)
  20. 电路板参数有哪些参数

热门文章

  1. Unet神经网络为什么会在医学图像分割表现好?
  2. 数学推导+纯Python实现机器学习算法26:PCA降维
  3. 卷积神经网络是如何实现不变性特征提取的
  4. VSLAM系列原创01讲 | 深入理解ORB关键点提取:原理+代码
  5. 激光雷达与相机—哪种更适合自动驾驶?
  6. Eclipse 最常用的 10 组快捷键,个个牛逼!
  7. 将Centos的yum源更换为国内的阿里云源
  8. 医疗信息安全再添新保障
  9. JAVA泛型的基本使用
  10. ca 服务器的搭建 和证书的申请与颁发