您的位置:首页 > 数据库 > Oracle

ORACLE数据库常见性能问题【Common Performance Problems Found in Oracle Databases】

2009-10-17 14:48 861 查看
ORACLE数据库常见性能问题【Common Performance Problems Found in Oracle Databases】
本部分列出了ORACLE数据库常见的性能问题,通过使用ORACLE性能调整方法,你可以避免这些问题。如果你有这些性能问题,重复ORACLE 性能调整方法的步骤,直到解决。具体的调整方法见后面的英文链接。也可以查看本手册的其它部分。【This section lists and describes common performance problems found in Oracle databases. By following the Oracle performance method, you should be able to avoid these problems. If you have these problems, then repeat the steps in the Oracle performance method, as described in "Using the Oracle Performance Method", or consult the appropriate section that addresses these problems:】
CPU瓶颈【CPU bottlenecks】
数据库系统性能低下是由于机器的CPU限制引起的吗?由CPU瓶颈引起的性能问题可以通过ADDM诊断,如后面第一个英文链接,也可以通过企业管理器(OEM)来检测CPU的瓶颈,如后面第二个英文链接。【Is the application performing poorly because the system is CPU-bound? Performance problems caused by CPU bottlenecks are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also identify CPU bottlenecks by using the Performance page in Enterprise Manager, as described in "Monitoring CPU Utilization".】
较小的内存【Undersized memory structures】
ORACLE数据库的内存结构如SGA,PGA,CACHE等大小合适吗?由内存大小引起的数据库性能问题可以通过ADDM诊断,如后面的第一个英文链接,也可以通过企业管理器(OEM)来诊断。如后面的第二个英文链接中的描述。【Are the Oracle memory structures—such as the System Global Area (SGA), Program Global Area (PGA), and buffer cache—adequately sized? Performance problems caused by undersized memory structures are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also identify memory usage issues by using the Performance page in Enterprise Manager, as described in "Monitoring Memory Utilization".】
I/O吞吐能力【I/O capacity issues】
I/O读写子系统的性能是你期望的吗?由I/O子系统引导起的吞吐量性能问题可以通过ADDM诊断 ,也可以通过企业管理器来诊断。【Is the I/O subsystem performing as expected? Performance problems caused by I/O capacity issues are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also identify disk I/O issues by using the Performance page in Oracle Enterprise Manager, as described in "Monitoring Disk I/O Utilization".】
应用程序问题【Suboptimal use of Oracle Database by the application】
应用程序对数据库系统的利用合理吗?类似过多的、不断重复的数据库连接,过多的SQL解析这样的问题,都会大大降低应用系统及数据库系统的性能。这方面的性能问题可以由ADDM来检测,诊断。也可以通过企业管理器OEM的性能页面来检测活动比较TOP的SQL,会话,模块,服务等。具体见后面的英文链接。【 Is the application making suboptimal use of Oracle Database? Problems such as establishing new database connections repeatedly, excessive SQL parsing, and high levels of contention for a small amount of data (also known as application-level block contention) can degrade the application performance significantly. Performance problems caused by suboptimal use of Oracle Database by the application are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also monitor top activity in various dimensions—including SQL, session, services, modules, and actions—by using the Performance page in Enterprise Manager, as described in "Monitoring User Activity".】
并发连接问题【Concurrency issues】
不理想的数据库性能是由过高的并发操作引起的吗?过多的并发操作可能会导致对共享资料的连接问题,导致其它会话会因为不能及时得到所需要的资源、锁,缓存等而处于等待状态。此并发操作引起的性能问题可以通过ADDM来诊断。你也可以通过企业管理器中的TOP Session页面来检测。具体见后面的英文链接。【Is the database performing suboptimally due to a high degree of concurrent activities in the database? A high degree of concurrent activities might result in contention for shared resources that can manifest in the forms of locks or waits for buffer cache. Performance problems caused by concurrency issues are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also identify concurrency issues by using Top Sessions in Enterprise Manager, as described in "Monitoring Top Sessions".】
数据库配置问题【Database configuration issues】
数据库的配置是否能达到期望的性能水平呢?比如,是否有比较明显的不合适的日志文件大小问题,归档问题,大量的系统检测点,或者不合适的参数设置?因数据库配置引起的性能问题,可能通过ADDM来检测,诊断。具体见后面的英文链接。【Is the database configured optimally to provide desired performance levels? For example, is there evidence of incorrect sizing of log files, archiving issues, excessive number of checkpoints, or suboptimal parameter settings? Performance problems caused by database configuration issues are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring".】
无常的、短暂的性能问题【Short-lived performance problems】
用户在抱怨无常的,莫名的性能问题吗?这种瞬间的性能问题通常不能够被ADDM捕获。你可以通过使用活动会话历史报告来检测发现这种瞬间的性能问题。具体见后面的英文链接。【(actiive session history report)Are users complaining about short-lived or intermittent performance problems? Depending on the interval between snapshots taken by AWR, performance problems that have a short duration may not be captured by ADDM. You can identify short-lived performance problems by using the Active Session History report, as described in Chapter 7, "Resolving Transient Performance Problems".】
数据库性能够日益下降【Degradation of database performance over time】
随着时间的推移,数据库的性能是否在明显的下降呢?你或你的用户是否觉的你的数据库性能是否不在像6个月以前的性能那样好吗?你可以生成一个AWR对比日期报告来对比两个不同时期(性能好的时期、性能不好的时期)的性能差别。此技术可以帮你检测出性能下降的原因。具体见后面的英文链接。【Is there evidence that the database performance has degraded over time? For example, are you or your users noticing that the database is not performing as well as it was 6 months ago? You can generate an AWR Compare Periods report to compare the period when the performance was poor to a period when the performance is stable to identify configuration settings, workload profile, and statistics that are different between these two time periods. This technique will help you identify the cause of the performance degradation, as described in Chapter 8, "Resolving Performance Degradation Over Time".】
效率低的或高负载的SQL语句【Inefficient or high-load SQL statements】
是否有一些SQL语句过多的占用着系统的资源,以致于影响着系统的性能?由高负载SQL语句引起的性能问题可以通过ADDM来诊断,检测,具体见后面的第一个、第二个英文链接。你也可以通过使用企业管理器中的顶极TOP SQL语句来检测出高负载的SQL语句。具体见后面的第三个英文链接。在检测出这些SQL语句之后,你可以通过使用SQL Tuning Advisor优化指导来优化这些高负载的语句,具体见最后一个英文链接。【Are any SQL statements using excessive system resources that impact the system? Performance problems caused by high-load SQL statements are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring" and "Identification of High-Load SQL Statements Using ADDM Findings". You can also identify high-load SQL statements by using Top SQL in Enterprise Manager, as described in "Identifying High-Load SQL Statements Using Top SQL". After they have been identified, you can tune the high-load SQL statements using SQL Tuning Advisor, as described in Chapter 10, "Tuning SQL Statements".】
对象链接【Object contention】
是否有一些数据库对象引起了性能瓶颈问题,当他们进行持续读写的时候?这方面的性能问题可以通过ADDM来诊断,具体见后面的英文链接。你也可以优化这些数据的访问路径,通过使用SQL Access Advisor访问指导。具体见后面的第二个英文链接。【Are any database objects the source of bottlenecks because they are continuously accessed? Performance problems caused by object contention are diagnosed by ADDM, as described in Chapter 3, "Automatic Database Performance Monitoring". You can also optimize the data access path to these objects using SQL Access Advisor, as described in Chapter 11, "Optimizing Data Access Paths".】
在调整SQL语句之后出现不可意料的性能下降【Unexpected performance regression after tuning SQL statements】
SQL语句的性能是否下降了,在它们被调整之后?调整SQL语句可能会引起SQL语句的执行计划的改变,从而导致性能的变化。在某些情况下,你所做的变化可能会降低你的系统的性能,这是正常的。所以,在你对生产系统作出改变前,你应该通过SQL分析工具(SQL Performance Analyzer)在测试系统上进行预调整。具体见后面的英文链接。【Is the performance of SQL statements degrading after they have been tuned? Tuning SQL statements may cause changes to execution plans of SQL statements, resulting in a significant impact on SQL performance. In some cases, the changes may result in the improvement of SQL performance. In other cases, the changes may cause SQL statements to regress, resulting in a degradation of SQL performance. Before making changes on a production system, you can analyze the performance impact from tuning SQL statements on a test system by using SQL Performance Analyzer, as described in Chapter 12, "Analyzing SQL Performance Impact".】
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐