【MOS】Troubleshooting Performance Issues (文档 ID 1377446.1)

简介: 【MOS】Troubleshooting Performance Issues (文档 ID 1377446.1) In this Document Purpose   ...

【MOS】Troubleshooting Performance Issues (文档 ID 1377446.1)
In this Document
Purpose
  Best Practices
  Pro-Active Problem Avoidance and Diagnostic Collection
  Performance Service Request Diagnostic Collection (SRDC) documents
Troubleshooting Steps
  General Performance
  AWR Generation
  AWR Interpretation
  Buffer Busy  Contention
  Cache Buffers Chains Latch Contention
  Configuration Parameters
  Connection Timeouts: Errors ORA-3135/ORA-3136
  Deadlocks: Error ORA-00060
  Disk I/O
  Enqueue/Locks
  High Numbers of Child Cursors/High Cursor Version Counts
  Hung database
  Latches
  Library Cache
  Log File Sync
  Mutex Contention
  Operating System (OS)
  Paging/Memory
  Slow Database
  SQL Issue Diagnosis Using DBMS_SQLDIAG
  SQL Tuning
  SYSAUX Tablespace Issues
  TKProf Runtime Errors
  Upgrade
  Virtual Circuit Waits
  'WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!'
  Community Discussions
References


APPLIES TO:

Oracle Database - Enterprise Edition - Version 10.1.0.2 and later
Oracle Database - Standard Edition - Version 10.1.0.2 and later
Oracle Database - Personal Edition - Version 10.1.0.2 and later
Information in this document applies to any platform.

PURPOSE

This article provides a central point for Performance Troubleshooting advice.

You can access categorised Troubleshooting information via the following:

Document 1543445.2 Troubleshooting Assistant: Troubleshooting Performance Issues
Document 1542678.2 Troubleshooting Assistant: SQL Performance Issues

This articles supersedes :

Document 106285.1 TROUBLESHOOTING GUIDE: Common Performance Tuning Issues (ARCHIVED)

Best Practices

Pro-Active Problem Avoidance and Diagnostic Collection

Although some problems may be unforeseen, in many cases problems may be avoidable if signs are detected early enough. Additionally, if an issue does occur, it is no use collecting information about that issue after the event. For information on suggested preparations to avoid issues and in case diagnostics are required, see:

Document 1482811.1 Best Practices: Proactively Avoiding Database and Query Performance Issues
Document 1477599.1 Best Practices Around Data Collection For Performance Issues

Performance Service Request Diagnostic Collection (SRDC) documents

Service Request Data Collection (SRDC) documents have been specially designed to provide the reader with the necessary instructions to provide a step by step guide to collecting information for a various common Database Performance Issues.

Document 1938786.1 List of Available Database Performance Related SRDC Documents

TROUBLESHOOTING STEPS

General Performance

The following articles can help with the interpretation of diagnostics to troubleshoot various issues:

Document 1362329.1 How To Investigate Slow Database Performance Issues
Document 390374.1 Oracle Performance Diagnostic Guide (OPDG)

AWR Generation

To troubleshoot the failure to collect AWR snapshots or reports, See:

Document 1301503.1 Troubleshooting: AWR Snapshot Collection issues 
Document 1363422.1 Automatic Workload Repository (AWR) Reports - Start Point

AWR Interpretation

How to troubleshoot performance issues using AWR snapshots or reports, See:

Document 1359094.1 FAQ: How to Use AWR reports to Diagnose Database Performance Issues 

Buffer Busy  Contention

To troubleshoot issues where Buffers have become Busy due to concurrent access, see:

Document 155971.1 Resolving Intense and "Random" Buffer Busy Wait Performance Problems:

Cache Buffers Chains Latch Contention

To troubleshoot issues caused by contention due to multiple sessions waiting to read the same block, see:

Document 1342917.1 Troubleshooting 'latch: cache buffers chains' Wait Contention

Configuration Parameters

Database parameters are designed so that the default is appropriate for the majority of cases. The following article discusses Optimizer Specific Parameters:

Document 1507909.1 What does it Mean if Disabling an Optimizer Specific Parameter Avoids a Performance Problem Detected After an Upgrade?

Connection Timeouts: Errors ORA-3135/ORA-3136

To troubleshoot issues caused by Connection Timeouts when errors such as ORA-3135 or ORA-3136 are seen, see:

Document 730066.1 Troubleshooting ORA-3135/ORA-3136 Connection Timeouts Errors - Database Diagnostics

Deadlocks: Error ORA-00060

For issues related to Deadlocks,refer to :

Document 60.1 Troubleshooting Assistant: Oracle Database ORA-00060 Errors on Single Instance (Non-RAC) Diagnosing Using Deadlock Graphs in ORA-00060 Trace Files
Document 1509919.1 Master Note for Database Error ORA-00060

Disk I/O

For issues related to Disk Input/Ouput (I/O),refer to :

Document 223117.1 Troubleshooting I/O-related waits 
Document 1275596.1 How to Tell if the IO of the Database is Slow

Enqueue/Locks

For locking issues refer to :

Document 1392319.1 Master Note: Locks, Enqueues and Deadlocks

Document 15476.1 FAQ about Detecting and Resolving Locking Conflicts

 

High Numbers of Child Cursors/High Cursor Version Counts

When a SQL statement is executed, Oracle will try to match that statement up with an existing identical statement that has already been executed and attempt to reuse the stored parsed representation of it (which is stored within a cursor structure in the library cache). If the existing information in the cursor for that statement cannot be used, a new version of that statement will be created and used instead. If lots of versions of a particular statement are created, Oracle has to search through the versions to determine which (if any) can be shared. In extreme circumstances, this can cause mutex contention and other issue that degrade the database performance. In order to troubleshoot these issues and determine the cause, see:

Document 296377.1 Troubleshooting: High Version Count Issues

Hung database

To troubleshoot cases where the database appears to have hung, refer to :

Document 1378583.1 Troubleshooting Database Hang Issues 
Document 452358.1 How to Collect Diagnostics for Database Hanging Issues


Latches

To troubleshoot issues where there is contention on 'cache buffers chains' latches see:

Document 1342917.1 Troubleshooting 'latch: cache buffers chains' Wait Contention

Library Cache

For issues related to contention in the Library Cache

Document 62143.1 Troubleshooting: Tuning the Shared Pool and Tuning Library Cache Latch Contention

Log File Sync

To troubleshoot issues where 'log file sync' is a primary cause of session wait activity, see:

Document 1376916.1 Troubleshooting: "Log File Sync" Waits 


Mutex Contention

For issues related to Mutex contention, refer to :

Document 1377998.1 Troubleshooting: Waits for Mutex Type Events

Document 1349387.1 Troubleshooting 'cursor: pin S wait on X' waits
Document 1357946.1 Troubleshooting 'library cache: mutex X' waits.

Document 1356828.1 FAQ: 'cursor: mutex ..' / 'cursor: pin ..' / 'library cache: mutex ..' Type Wait Events

Operating System (OS)

To troubleshoot Operating System (OS) related issues see:

Document 352648.1 How to Diagnose High CPU Usage Problems to the Module Level
Document 148176.1 Diagnosing hardware configuration induced performance problems

Paging/Memory

If heavy paging activity is seen and the database appears to be running more slowly than normal, refer to :

Document 1195174.1 Heavy Paging Causes Slow Database Performance

Slow Database

To troubleshoot occasions where the database appears to be running more slowly than normal, refer to :

Document 1362329.1 How To Investigate Slow Database Performance Issues

SQL Issue Diagnosis Using DBMS_SQLDIAG

An increasing number of issues can be detected, diagnosed and avoided using the DBMS_SQLDIAG package. For details see:

Document 1509192.1 How To Use DBMS_SQLDIAG To Diagnose Various Query Issues

SQL Tuning

For issues with individual queries, refer to the following troubleshooting documents:

Document 742112.1 * Query Performance Degradation - Recommended Actions 
Document 745216.1 * Query Performance Degradation - Upgrade Related - Recommended Actions

Document 179668.1 * TROUBLESHOOTING: Tuning Slow Running Queries 

Document 33089.1 * TROUBLESHOOTING: Possible Causes of Poor SQL Performance 
Document 372431.1 * TROUBLESHOOTING: Tuning a New Query 
Document 122812.1 * TROUBLESHOOTING: Tuning Queries That Cannot be Modified 
Document 163563.1 * TROUBLESHOOTING: Advanced Query Tuning

Document 1386036.1 How To Diagnose Issues Where Plans Are Different From Different Clients

SYSAUX Tablespace Issues

Document 1399365.1 Troubleshooting Issues with the SYSAUX Tablespace

TKProf Runtime Errors

Document 1383275.1 Troubleshooting TKProf Runtime Errors

Upgrade

To troubleshoot issues encountered after upgrading a database see:

Document 1528847.1 Troubleshooting: Avoiding and Resolving Database Performance Related Issues After Upgrade
Document 160089.1 TROUBLESHOOTING: Server Upgrade Results in Slow Query Performance 


For advice on how to avoid such issues before upgrading, see:

Document 1482811.1 Best Practices: Proactively Avoiding Database and Query Performance Issues
Document 785351.1 Oracle 11gR2 Upgrade Companion

Document 1645862.1 Things to Consider Before Upgrading to 11.2.0.4 to Avoid Poor Performance or Wrong Results 
Document 1392633.1 Things to Consider Before Upgrading to 11.2.0.3 to Avoid Poor Performance or Wrong Results 
Document 1320966.1 Things to Consider Before Upgrading to 11.2.0.2 to Avoid Poor Performance or Wrong Results

Virtual Circuit Waits

Document 1415999.1 Troubleshooting: Virtual Circuit Waits

'WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!'

To troubleshoot issues when the database detects that a waiter has waited for a resource for longer than a particular threshold and he message "WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!" appears in the alert log, See:

Document 278316.1 Troubleshooting: "WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!"


Community Discussions

Still have questions? Use the communities window below to search for similar discussions or start a new discussion on this subject. (Window is the live community not a screenshot)

Click here to open in main browser window

  

  

 

   

目录
相关文章
|
前端开发 JavaScript Android开发
打算一个卡片记忆软件,全平台架构如何选型?
打算一个卡片记忆软件,全平台架构如何选型?
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
云上一键部署 DeepSeek-V3 模型,阿里云 PAI-Model Gallery 最佳实践
本文介绍了如何在阿里云 PAI 平台上一键部署 DeepSeek-V3 模型,通过这一过程,用户能够轻松地利用 DeepSeek-V3 模型进行实时交互和 API 推理,从而加速 AI 应用的开发和部署。
|
数据采集 运维 算法
大数据项目管理:从需求分析到成果交付的全流程指南
【4月更文挑战第9天】本文介绍了大数据项目从需求分析到成果交付的全过程,包括需求收集与梳理、可行性分析、项目规划、数据准备与处理、系统开发与集成,以及成果交付与运维。文中通过实例展示了如何进行数据源接入、数据仓库建设、系统设计、算法开发,同时强调了需求理解、知识转移、系统运维的重要性。此外,还提供了Python和SQL代码片段,以说明具体技术实现。在大数据项目管理中,需结合业务和技术,灵活运用这些方法,确保项目的成功执行和价值实现。
3187 1
|
Shell Python BI
targetcli内核态操作实战
工作中一旦遇到内核态的东西感觉操作非常困难,并且各种的权限的限制导致的操作非常困难,最终往往都是重启了事。比如进程出现了僵尸D状态,活着出现内核态数据残留,例如sysfs数据残留等
444 2
|
前端开发 Java API
Knife4j使用教程
Knife4j使用教程
1725 0
|
存储 SQL JSON
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(一)
5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)(一)
|
SQL XML 存储
四.吃透Mybatis源码-通过分析Pagehelper源码来理解Mybatis的拦截器
面试官:用过pagehelper做分页把,你说一下pagehelper的分页实现原理。额…此时你只能说我不知道。如果你事先看了我接下来的这篇文章,相信你一定也把这个面试题答得很好。
|
数据采集 Java Unix
大数据 ETL 处理工具 Kettle 入门实践
Kettle 是一款国外开源的 ETL 工具,对商业用户也没有限制,纯 Java 编写,可以在 Window、Linux、Unix 上运行,绿色无需安装,数据抽取高效稳定。Kettle 中文名称叫水壶,它允许管理来自不同数据库的数据,把各种数据放到一个壶里,然后以一种指定的格式流出。Kettle 中有两种脚本文件,Transformation 和 Job, Transformation 完成针对数据的基础转换,Job 则完成整个工作流的控制。通过图形界面设计实现做什么业务,并在 Job 下的 start 模块,有一个定时功能,可以每日,每周等方式进行定时。
|
测试技术 BI Android开发
测试思想-流程规范 软件测试版本管理与版本发布
测试思想-流程规范 软件测试版本管理与版本发布
397 0
|
SQL 数据可视化 网络协议
IoT Studio大屏组件(DataV)使用教程
物联网应用开发(IoT Studio)的Web可视化开发平台提供了大屏组件功能,支持使用可视化大屏的方式来分析并展示庞杂的数据。大屏组件可帮助非专业的工程师通过图形化的界面轻松搭建专业水准的可视化应用,满足您会议展览、业务监控、风险预警、地理信息分析等多种业务的展示需求。本文通过基本折线图展示设备上报的属性,DataV组件数据源通过数据分析API实现。
5523 0
IoT Studio大屏组件(DataV)使用教程