当前位置:  数据库>oracle

Oracle 响应慢问题解决

    来源: 互联网  发布时间:2017-03-24

    本文导语: 问题描述 1、应用连接数据异常缓慢,包括客户端使用plsql连接; 2、数据库主机cpu占用率居高不下,IO写入居高不下。 3、主机日常维护操作响应慢,如man或w; 分析问题 ?系统及Oracle应用为什么响应慢 1、为什么系统连w这么简单...

问题描述

1、应用连接数据异常缓慢,包括客户端使用plsql连接;

2、数据库主机cpu占用率居高不下,IO写入居高不下。

3、主机日常维护操作响应慢,如man或w;

分析问题

?系统及Oracle应用为什么响应慢

1、为什么系统连w这么简单的操作都会觉得卡呢?

2、为什么没有任何应用接入的情况下,数据库会有大量的写入操作呢?

Top //查看cpu使用情况,发现iowait%占用了大量的cpu时间;

Iostat –mx 2 100 查看disk使用情况,发现磁盘利用率长时间处于100%状态;将系统响应慢定位在io请求过多导致。(关于iostat的使用参见man)。

?什么导致出现如此之多的IO请求呢?

在观察后台的进程,发现有ora_p000...ora_p015. 共16个进程在运行。

我机器物理上2颗CPU,共有8个core (Cat /proc/cpuinfo可以看到机器cpu信息)。 运行Sqlplus “/as sysdba”进入sql命令行查看rollback相关参数,Show parameter rollback 看到FAST_START_PARALLEL_ROLLBACK = LOW,此参数为默认设置为LOW,表明并行运行的回滚进程有2*number of cpu,在我的系统刚好表现为16个进程。与我使用ps –ef | grep ora_p  看到的ora_p000_*0**到ora_p015_***进程对应。

?为什么会有如此多的回滚进程出现呢?

经过询问项目组相关人员,发现有人在执行imp导入时,手动终止了。拿到该同事的imp语句一看清楚了,由于导入的数据量较大,又没有逐行提交(commit=y),异常终止后产生大量的回滚动作。

?回滚慢操作为什么慢:

View $ORACLE_BASE/admin/$ORACLE_SID/bdump/alter_.log查看oracle alert日志,发现大量的Checkpoint not completed,表明redo文件组太少,导致LGWR进程在切换到新redo file时,等待旧数据写入(dbwn)数据文件;

解决办法就是增加redo file 组;

Alert database add logfile group 4(‘/u01/app/oracle/oradata/oracl/redo04.log’) size 100M;

Alert database add logfile group 5(‘/u01/app/oracle/oradata/oracl/redo05.log’) size 100M;

Alert database add logfile group 6(‘/u01/app/oracle/oradata/oracl/redo06.log’) size 100M;

根据需要可添加更多的redo文件组。

Select group#,members,status from v$log;发现有inactive出现就可以了。Redo 文件处在active状态说明redo文件还没写入在数据文件中,若此时LGWR switch切换到active文件,将在alert日志中出现Checkpoint未完成告警。

需要说明的是:回滚操作由于要写入redo文件,其本身就是很消耗系统资源的。


    
 
 

您可能感兴趣的文章:

  • Oracle Dataguard备库失败与主库响应测试
  • 解决oracle用户连接失败的解决方法
  • Oracle Connect to Idle Instance解决方法
  • Linux下安装Tomcat后与Oracle冲突的解决
  • linux下安装oracle,出现没有权限的报警,怎么解决?
  • 安装Oracle加载数据库错误areasQueries的解决
  • Oracle 11g 相关工具netca,dbca乱码之解决
  • Linux安装Oracle 11时报错DISPLAY解决方案
  • Linux下Oracle安装时遇到的问题及解决
  • 简单的Oracle小问题解决
  • oracle中文乱码解决的办法
  • 关于系统重装后Oracle数据库完全恢复的解决办法
  • 安装oracle9时,安装界面的字体无法正确显示,怎么解决啊???
  • Oracle安装后8080和80端口被占用的解决办法
  • oracle远程连接服务器出现 ORA-12170 TNS:连接超时 解决办法
  • oracle 实际值超过数据库某个字段指定长度报错解决
  • Linux下命令行启动oracle时报错的解决
  • 急!急!jbuilder中新建oracle数据源的问题,解决立即给分!
  • Linux系统下安装Oracle X11错误解决办法
  • Linux中安装Oracle乱码问题的解决
  • Oracle与JSDK4.0环境变量冲突,如何解决(在线等待)?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 问一个简单的问题,我装了oracle 8.05,我并没有发有发现JDBC这个目录,是不是我要下载jdbc for oracle。
  • Linux下的Oracle安装问题(非常问题)
  • Oracle 10g中导出到Oracle 9的问题小结
  • oracle JDBC的问题
  • Suse linux使用oracle问题
  • 请教: Javaswing 和 Oracle JDBC thin 连接的问题
  • oracle版本问题
  • 关于oracle的一个恼火的小问题!
  • Javabeen+oracle的问题
  • 安装ORACLE的问题
  • 再问java 连接oracle 问题,急!
  • Oracle 监听内存泄露问题
  • Oracle乱码问题
  • oracle环境变量保存问题求教
  • Oracle高级官员回答Sun雇员的问题
  • 请问一个oracle的jdbc问题
  • Jsp连接Oracle的问题 ???
  • 请教JSP与ORACLE连接问题。
  • JAVA连接ORACLE问题(100分)
  • 在linux下安装oracle的小问题
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3