oracle数据库级别优化分析工具介绍
- 格式:doc
- 大小:323.00 KB
- 文档页数:11
数据库调优是提高数据库性能和优化数据库操作的重要任务。
在进行数据库调优时,选择合适的工具是提高效率和准确性的关键。
本文将推荐一些常用的数据库调优工具,供读者参考。
一、性能监控工具性能监控是数据库调优的基础,它能够实时监测数据库的性能指标,帮助用户快速定位和解决性能问题。
以下几种性能监控工具可以满足不同场景下的需求:1. SQL Server ProfilerSQL Server Profiler是微软提供的一款针对SQL Server的性能监控工具。
它可以捕捉SQL Server的各种事件,包括SQL语句执行、死锁、I/O操作等,帮助用户分析和优化查询性能。
2. MySQL Enterprise MonitorMySQL Enterprise Monitor是MySQL官方提供的一款全面的性能监控和管理工具。
它能够监控数据库实例的运行状态、性能指标和数据库对象,提供实时警告和详细报告,并提供性能优化建议。
3. Oracle Enterprise ManagerOracle Enterprise Manager是Oracle数据库的一套集成化管理工具,其中包含了丰富的性能监控和调优功能。
它能够监控Oracle数据库的性能指标、系统资源的利用率等,帮助用户找出性能瓶颈并提供优化建议。
二、查询优化工具优化查询是数据库调优的重要环节,通过调整查询语句的结构和索引的使用,可以提高查询性能。
以下几种查询优化工具可以帮助用户分析查询执行计划、找出性能问题和提供优化建议:1. SQL Server Management StudioSQL Server Management Studio是SQL Server的官方管理工具,其中包含了查询执行计划的分析功能。
用户可以通过执行计划的查看来了解查询语句的执行过程,找出性能瓶颈并进行优化。
2. MySQL WorkbenchMySQL Workbench是MySQL官方提供的一款集成化开发和管理工具,其中包含了查询执行计划和索引分析功能。
数据库优化是一个关乎效率和性能的重要问题。
随着数据量的不断增大,数据库系统的性能优化显得尤为重要。
为了提高数据库的性能和效率,我们可以使用一些数据库优化工具。
本文将介绍一些常用的数据库优化工具,并分享一些使用技巧。
一、数据库优化工具的推荐1. SQL优化器SQL优化器是数据库优化的重要工具之一。
它能够自动地对SQL语句进行分析和优化,提高查询语句的执行效率。
常见的SQL优化器有Oracle的SQL Optimizer、Microsoft SQL Server的Query Optimizer等。
使用SQL优化器,可以通过适当修改和调整SQL语句,提高数据库的查询性能。
2. 数据库监控工具数据库监控工具能够实时监测数据库的运行情况,包括查询速度、锁定情况、数据库连接数等。
通过监控数据库的运行情况,可以及时发现和解决性能瓶颈,提高数据库的响应速度。
常见的数据库监控工具有MySQL的Percona Monitoring and Management、Oracle的Oracle Enterprise Manager等。
3. 数据库索引优化工具数据库的索引对于查询性能的提升至关重要。
数据库索引优化工具可以帮助我们分析现有索引的使用情况,并提供优化建议。
通过调整索引的结构和使用方法,可以显著提高数据库的查询性能。
常见的数据库索引优化工具有MySQL的pt-duplicate-key-checker、PostgreSQL的pgBadger等。
4. 数据库调优工具数据库调优是指通过调整数据库的配置参数和优化SQL语句,提高数据库的性能和运行效率。
数据库调优工具可以自动地分析数据库的性能瓶颈,并给出相应的优化建议。
常见的数据库调优工具有MySQL 的pt-query-digest、Microsoft SQL Server的Database Engine Tuning Advisor等。
二、数据库优化工具的使用技巧1. 了解数据库的运行情况在使用数据库优化工具之前,首先要了解数据库的运行情况。
数据库优化的常用工具介绍与使用技巧随着大数据时代的到来,数据库管理和优化变得尤为重要。
一个高效、稳定的数据库系统往往是企业保持竞争力的关键所在。
为了达到更好的数据库性能,提高系统响应速度,开发人员和数据库管理员广泛使用各种工具来进行数据库优化。
本文将介绍一些常用的数据库优化工具,并分享一些使用技巧,帮助读者更好地利用这些工具。
1. 数据库性能监控工具数据库性能监控工具是数据库管理员的得力助手。
通过监控数据库的运行状态和性能指标,可以帮助管理员及时发现问题并采取相应措施。
常见的数据库性能监控工具包括:Oracle Enterprise Manager、SQL Server Management Studio、MySQL Enterprise Monitor等。
这些工具提供了直观的图形化界面,显示系统性能指标、实时会话信息和数据库对象统计数据等,方便管理员诊断性能瓶颈。
使用技巧:- 设置合适的阈值和警报机制,实现自动化的性能监控和报警。
- 定期分析监控数据并生成报表,以便找出性能问题的根源。
- 结合系统日志和操作日志,全面了解数据库的异常情况和操作行为。
2. SQL优化工具SQL优化是数据库优化的重要环节,合理的SQL语句设计和调整可以显著提升数据库性能。
为了帮助开发人员优化SQL语句,降低查询成本,一些强大的SQL优化工具被广泛应用。
其中最常见的是Oracle SQL Developer、SQL Server Management Studio和MySQL Workbench等。
这些工具提供了SQL语句分析功能,可以识别低效率的查询、缺失的索引以及无用的数据访问等问题,并生成相应的优化建议。
使用技巧:- 使用工具提供的查询分析功能,针对复杂的查询语句进行性能分析,并根据优化建议进行调整。
- 使用索引优化功能,根据数据库的统计信息,选择合适的索引策略,提高查询效率。
- 注意避免使用SELECT *,只选择需要的列,减少不必要的数据传输和处理。
数据库性能分析与优化的常用工具数据库是现代应用开发的关键组成部分,对于大型企业或网站来说,数据库性能的高效与稳定是至关重要的。
为了保证数据库的运行和响应速度,开发人员和数据库管理员需要使用一些专业的工具来进行性能分析和优化。
下面将介绍一些常用的数据库性能分析与优化工具。
1. SQL ProfilerSQL Profiler是微软SQL Server的性能分析工具,能够监测数据库服务器上的活动,并生成相应的日志文件。
通过分析SQL Profiler生成的日志文件,开发人员可以发现数据库的潜在问题。
SQL Profiler可以捕获和显示各种事件,包括数据库的查询和事务执行。
它还提供了性能计数器,用于监控数据库服务器的性能指标,并识别潜在的性能瓶颈。
2. Explain PlanExplain Plan是Oracle数据库的一个工具,用于显示SQL查询语句的执行计划。
执行计划是Oracle数据库引擎根据SQL查询语句优化器的规划而生成的一组操作步骤。
通过分析执行计划,可以了解查询语句的执行情况,包括使用的索引、连接方式和排序方式等。
通过优化查询语句的执行计划,可以提高查询的性能。
3. MySQL Performance Tuning PrimerMySQL Performance Tuning Primer是一个基于命令行的工具,用于分析和优化MySQL数据库的性能。
该工具可以分析MySQL服务器的配置参数,并给出优化建议。
它可以检查诸如缓冲池大小、连接数和查询缓存等参数的设置,并提供了针对这些参数的建议和优化指南。
开发人员可以根据这些建议和指南,对MySQL服务器的配置进行优化,提高数据库的性能。
4. pg_stat_statementspg_stat_statements是PostgreSQL数据库的一个扩展模块,用于收集和分析数据库中的SQL查询语句的执行统计信息。
该模块可以记录查询语句的执行次数、执行时间和返回行数等信息,并将这些信息存储在指定的统计表中。
数据库是现代信息系统的核心之一,随着数据量的不断增长和应用场景的复杂化,数据库优化成为了每个数据库管理员和开发人员必须面对的重要任务。
在数据库优化过程中,使用一些实用工具和技巧可以大大提高工作效率和优化效果。
本文将推荐几款常用的数据库优化实用工具,并介绍它们的使用技巧。
一、数据库性能分析工具数据库性能分析是数据库优化的基础,只有了解数据库的瓶颈和性能问题,才能有针对性地进行优化。
以下是几款常用的数据库性能分析工具:1. SQL ProfilerSQL Profiler是微软SQL Server数据库自带的性能分析工具,可以捕获并分析数据库引擎接收和处理的SQL查询语句。
通过SQL Profiler,可以查看SQL的执行计划、锁定情况、索引使用状态等信息,帮助定位和解决性能问题。
2. ExplainExplain是MySQL数据库自带的工具,可以解释查询语句的执行计划。
通过Explain,可以了解查询语句是如何执行的,从而帮助优化查询性能。
Explain会展示查询语句的执行顺序、使用的索引、访问的行数等信息,对于复杂查询语句的优化非常有帮助。
3. AWR报告AWR(Automatic Workload Repository)是Oracle数据库自带的性能分析工具,可以收集数据库运行期间的性能指标,并生成详细的报告。
AWR报告可以展示数据库的整体性能指标、繁忙时间段、等待事件、SQL语句性能等信息,为数据库优化提供了参考依据。
二、数据库索引优化工具数据库索引是提高查询性能的重要手段,通过对关键列创建索引,可以加快数据检索的速度。
以下是几款常用的数据库索引优化工具:1. SQL Tuning AdvisorSQL Tuning Advisor是Oracle数据库自带的索引优化工具,可以根据SQL语句的执行计划和统计信息,推荐合适的索引来提高性能。
SQL Tuning Advisor可以自动分析SQL语句,并提供索引创建建议,帮助优化数据库性能。
数据库调优是保证数据库性能和稳定运行的重要步骤。
通过合理使用一些常用的数据库调优工具,可以帮助我们识别数据库中的瓶颈,并对其进行优化,从而提高系统的效率和响应速度。
本文将介绍几种常用的数据库调优工具,供读者参考。
一、性能分析工具1. SQL ProfilerSQL Profiler是微软提供的用于监视和调试SQL Server数据库的强大工具。
通过捕获和分析数据库产生的查询、存储过程和触发器等操作,我们可以深入了解SQL Server的性能问题,并进行相应的优化。
SQL Profiler可以帮助我们发现慢查询、长时间运行的操作以及频繁执行的查询等问题。
2. ExplainExplain是一种用于分析和优化MySQL查询语句的工具。
通过执行Explain命令,我们可以获取查询语句的执行计划。
该执行计划包含了查询涉及的表、索引的使用情况以及执行顺序等信息,帮助我们找出潜在的性能问题,并作出相应的调整。
3. StatspackStatspack是Oracle数据库自带的性能分析工具。
通过定期收集系统的性能指标,Statspack可以生成详细的性能报告,包括数据库的各项指标、用户活动情况、SQL语句执行情况等。
借助Statspack的功能,我们可以发现数据库中存在的性能问题,并根据报告中的建议进行优化。
二、索引分析工具1. SQL Server索引优化向导(Index Tuning Wizard)Index Tuning Wizard是SQL Server中的一个强大的工具,用于帮助我们识别和优化数据库中的索引问题。
通过分析数据库的查询历史和查询计划,Index Tuning Wizard可以生成一个优化方案,包括新增、删除或修改索引的建议。
这样,我们可以根据工具的建议进行索引调整,提高数据库的查询性能。
2. MySQL优化工具(MySQL Tuner)MySQL Tuner是一款适用于MySQL数据库的优化工具,可以帮助我们评估和优化数据库的性能。
SQL Tuning Advisor是Oracle数据库自带的一个SQL优化工具,它可以帮助我们诊断、分析和优化SQL语句的性能问题。
以下是使用SQL Tuning Advisor的主要步骤:
1. 建立tunning task
首先,您需要创建一个tuning task以开始分析过程。
在Oracle中,可以使用`CREATE TABLE`和`GRANT`等命令来完成此任务。
例如,您可以通过创建测试表以及索引来开始任务,或者通过授予特定用户(如`SYSDBA`)的权限来启动任务。
2. 执行task
一旦建立了tuning task,就可以开始执行它了。
执行的过程可能需要一些时间,具体取决于您数据库的大小和复杂性。
3. 显示tunning 结果
当任务完成后,SQL Tuning Advisor会显示关于您的SQL语句性能的分析结果。
这些结果会指出可能的性能问题,并给出相应的解决建议。
4. 根据建议来运行相应的调优方法
最后一步是根据SQL Tuning Advisor给出的建议来运行相应的调优方法。
这些调优方法可能包括修改SQL语句的结构,添加或删除索引,或者对数据库进行其他配置更改等。
总的来说,SQL Tuning Advisor是一个强大的工具,可以帮助数据库管理员优化他们的SQL语句性能。
但是,它只是诊断和优化性能问题的一种工具,并不能解决所有的性能问题。
因此,在使用SQL Tuning Advisor的同时,还需要其他的技术和经验来维护和优化数据库的性
能。
Oracle优化器介绍Oracle优化器介绍本⽂讲述了Oracle优化器的概念、⼯作原理和使⽤⽅法,兼顾了Oracle8i、9i以及最新的10g三个版本。
理解本⽂将有助于您更好的更有效的进⾏SQL优化⼯作。
RBO优化器RBO是⼀种基于规则的优化器,随着CBO优化器的逐步发展和完善,在最新的10g版本中Oracle已经彻底废除了RBO。
正在使⽤Oracle8i或9i的⼈们或多或少的都会碰到RBO,因此在详细介绍CBO之前,我们有必要简单回顾⼀下古⽼的RBO优化器。
在RBO中Oracle根据可⽤的访问路径和访问路径的等级来选择执⾏计划,等级越⾼的访问路径通常运⾏SQL越慢,如果⼀个语句有多个路径可⾛,Oracle总是选择等级较低的访问路径。
RBO访问路径1级:⽤Rowid定位单⾏当WHERE⼦句中直接嵌⼊Rowid时,RBO⾛此路径。
Oracle不推荐直接引⽤Rowid,Rowid可能会由于版本的改变⽽变化,⾏迁移、⾏链接、EXP/IMP也会使Rowid发⽣变化。
2级:⽤Cluster Join定位单⾏两个表做等值连接,⼀⽅的连接字段是Cluster Key,且WHERE中存在可以保证该语句仅返回⼀⾏记录的条件时,RBO⾛此路径。
3级:⽤带⽤唯⼀约束或做主键的Hash Cluster Key定位单⾏4级:⽤唯⼀约束的字段或做主键的字段来定位单⾏5级:Cluster Join6级:使⽤Hash Cluster Key7级:使⽤索引Cluster Key8级:使⽤复合索引9级:使⽤单字段索引10级:⽤索引进⾏有界限范围的查找如,column >[=] expr AND column <[=] expr或column BETWEEN expr AND expr或column LIKE ‘c%’11级:⽤索引字段进⾏⽆界限的查找如,WHERE column >[=] expr 或 WHERE column <[=] expr12级:排序合并连接13级:对索引字段使⽤MAX或MIN函数14级:ORDER BY索引字段15级:全表扫描如果可以使⽤索引RBO会尽可能的去⽤索引⽽不是全表扫描,但是在下列⼀些情况RBO只能使⽤全表扫描:如果column1和column2是同⼀个表的字段,含有条件column1 < column2或column1 > column2或column1 <= column2或column1 >= column2,RBO会⽤全表扫描。
Oracle中CBO优化器简介Oracle数据库中的优化器是SQL分析和执行的优化工具。
它负责制定SQL的执行计划,也就是它负责保证SQL的执行计划的效率最高,比如优化器决定Oracle以什么样的方式访问数据,优化器是SQL执行的核心,它作出的执行计划的好坏,直接影响着SQL的执行效率。
1、执行计划中数据的访问方式:直接表(无索引)的访问:并行多数据块通过索引访问:index unique scan(=唯一值)Index range scan(<,>范围)Index full scan(order by, <>)Index fast full scan(count(index))Index skip scan(前导重复率高的联合索引)当要返回的数据量占整个表的大部分时,建议使用全表扫描(并行、多块读)FFS(index fast full scan)常用于count(索引列),可以对索引进行多数据块读(只要求和,不需要依次扫描)index range scan:返回整个表的部分(不宜太大)2、执行计划中数据的关联处理:Nested loop join:嵌套循环Merge join:先将表排序Hash join:hash定位HJ:关联中有一个表比较小(将被做成hash表存放在内存中)、表上没有索引、返回结果集比较大NL:关联中有一个表比较小、被关联表(大表)的关联字段上有索引、索引的键值的重复率不应过高ML:中间过程的结果集已经排过序(比较少见,通常是对最终结果进行排序)CBO优化器有两者可以选择的运行模式:First_rows(n)All_rows3、First_rows(n)模式当设置为first_rows(n)模式时,Oracle在执行SQL时,会优选考虑将结果集的前N条记录以最快的速度反馈回来,而其他的结果并不需要同时返回。
这种设置常用于一些电子商务网站或者BBS论坛的分页处理。
千里之行,始于足下。
Oracle数据库性能优化分析Oracle数据库性能优化分析是指对Oracle数据库进行综合性能分析和优化的过程。
通过分析数据库的运行状况、识别潜在的性能瓶颈、确定解决方案并实施优化措施,可以提高数据库的性能和效率。
以下是Oracle数据库性能优化分析的一般步骤:1. 收集性能数据:通过Oracle的性能监控工具,如AWR报告、统计信息收集等,收集数据库的性能数据,包括CPU利用率、I/O响应时间、锁定情况等。
2. 确定性能瓶颈:通过分析性能数据,确定数据库中存在的性能瓶颈,如高CPU使用率、高IO等待、长时间的锁等待等。
3. 优化SQL语句:分析执行频次较高的SQL语句,通过重写SQL语句、调整索引和统计信息等方式,优化SQL语句的执行计划,减少IO开销和CPU消耗。
4. 优化数据库结构:根据应用的需求和查询模式,调整表结构、分区策略、索引设计等,以提高查询性能和数据访问效率。
5. 优化数据库配置参数:调整数据库的配置参数,包括缓冲区大小、日志大小、并发连接数等,以最大限度地利用硬件资源,提高数据库的吞吐量和响应时间。
6. 确保数据完整性和一致性:通过使用合适的约束和触发器,确保数据的完整性和一致性,防止数据错误和冲突对性能造成负面影响。
第1页/共2页锲而不舍,金石可镂。
7. 监控和调优:定期监控数据库的性能指标,如响应时间、吞吐量等,及时识别和解决潜在的性能问题,保持数据库的高可用性和性能稳定性。
需要注意的是,性能优化是一个综合性的工作,需要结合具体的应用场景和需求来进行分析和优化,没有一种通用的解决方案,需要根据实际情况进行定制化的优化措施。
同时,性能优化是一个持续改进的过程,需要定期评估数据库的性能状况,并根据需求进行调整和优化。
oracle数据库级别优化分析工具介绍当我们对数据库优化诊断时,需要收集相应的信息以供参考,从个人的使用经验来说,这种统计数据分为两大类一类是数据库级别的统计信息二类是os级别的统计信息下面就分别介绍在不同的级别下,常用什么工具来收集信息帮助优化诊断首先是oracle数据库级别优化分析工具介绍目录:1.statspack2.ASH3.AWR4.ORACLE EXPLAIN PLAN的总结(查询sql的执行计划)a.autotraceb.explain的使用1.statspacka。
安装sql> sqlplus "/ as sysdba"SQL> select file_name from dba_data_files;SQL> create tablespace perfstat datafile 'e:\oracle\oradata\skate\perfstat.d bf' size 2000m;sql> @ORACLE_HOME\rdbms\admin\spcreate.sqlb。
使用SQL> conn perfstat/passwd收集统计信息sql> execute statspack.snap或SQL> exec statspack.SNAP(i_snap_level =>5);生成报告sql> @ORACLE_HOME\rdbms\admin\spreport.sql定时收集信息有两种方式,一种是oracle job,一种是os的crontab,我比较习惯用o s级别的crontab设定其每个小时自动收集一次采样的jobdeclareVariable job number ;begindbms_job.submit(:job, "statspack.snap;" ,trunc( sysdate + 1/24 , 'hh24' ), "trunc(sysdate+1/24,'hh24')" );commit ;end ;/查看job使用情况SQL> select job,schema_user,next_date,interval,what from user_jobs自动停止采样jobdeclareVariable job number ;begindbms_job.submit(:job, "dbms_job.broken(44,true);" ,trunc( sysdate + 1 ), "null" );commit ;end ;/清空所有stats统计信息表里的数据sql> @ORACLE_HOME\rdbms\admin\sptrunc.sqlsnapshot的level,这可以通过EXEC STATSPACK.MODIFY_STATSPACK_PARAME TER(i_snap_level=N)来修改,N可以为0,5,6,7,10,缺省为5。
0 仅提供一般性能统计5 增加了对SQL语句总体分析6 增加了SQL计划和使用7 增加了分段(Segments)级的统计10增加了对闩锁(Latches)的分析其中文档建议对10要慎重,因为代价较高。
eg:SQL> exec statspack.SNAP(i_snap_level =>6);oracle不仅提供生成数据库报告的脚本spreport.sql,还提供另一个statspack 报告脚本sprepsql.sql来生成SQL的报告sql> @ORACLE_HOME\rdbms\admin\sprepsql.sql参考文档:利用statspack来获取生成环境中top SQL及其执行计划/Doc/statspack_report_sql.htm2.AWRawr是建库是自动配置和启用的,他对性能数据的收集默认是一小时,awr对历史数据的分析生成报告脚本在目录下生成报告使用$ORACLE_HOME/rdbms/admin/,如下:awrrpt.sql :生成指定快照区间的统计报表;awrrpti.sql :生成指定数据库实例,并且指定快照区间的统计报表;awrsqlrpt.sql :生成指定快照区间,指定SQL语句(实际指定的是该语句的SQLID)的统计报表;awrsqrpi.sql :生成指定数据库实例,指定快照区间的指定SQL语句的统计报表;awrddrpt.sql :指定两个不同的时间周期,生成这两个周期的统计对比报表;awrddrpi.sql :指定数据库实例,并指定两个的不同时间周期,生成这两个周期的统计对比报表;修改Snapshots设置通过MODIFY_SNAPSHOT_SETTINGS过程,DBA可以调整包括快照收集频率、快照保存时间、以及捕获的SQL数量三个方面的设置。
分别对应MODIFY_SNAPSHO T_SETTINGS 的三个参数:Retention :设置快照保存的时间,单位是分钟。
可设置的值最小为1天,最大为100年。
设置该参数值为0的话,就表示永久保留收集的快照信息。
Interval :设置快照收集的频率,以分钟为单位。
可设置的值最小为10分钟,最大为1年。
如果设置该参数值为0,就表示禁用AWR特性。
Topnsql :指定收集的比较占用资源的SQL数量,可设置的值最小为30,最大不超过10 0000000。
AWR相关几个视图:DBA_HIST_WR_CONTROL:查看当前快照收集的相关设置v$active_session_history:由ASH自动在内存中维护,以每秒一次的频率收集当前系统中活动session的信息dba_hist_active_sess_history:是视图v$active_session_history的历史数据,保存在硬盘上dba_hist_database_instance:显示数据库是实例的信息dba_hist_snapshot:当前数据库收集到的快照信息3.ASHash和awr不是完全分离的两个功能,ash以秒为单位从v$session中收集信息并保存在内存中,这块内存可以重用,内存满时,ASH数据交给AWR,最后写入系统视图ash包括两部分内容,一部分是SGA中的,这部分反映是本次系统启动以来的数据,并且ASH尽量保留1小时的内容,这部分内容保存在v$active_session_history另一部分保存在系统字典表里dba_hist_active_sess_history,是永久的数据ASH也有生成报告的脚本,在目录下$ORACLE_HOME/rdbms/admin/ashrpt.sql: 生成数据库级别的ASH统计报表ashrpti.sql: 生成数据库实例级别的ASH统计报表,常用于RAC单实例4.ORACLE EXPLAIN PLAN的总结(查询sql的执行计划)a.autotrace安装用sys用户运行脚本ultxplan.sql建立这个表的脚本是:(UNIX:$ORACLE_HOME/rdbms/admin, Windows:%ORACL E_HOME%\rdbms\admin)ultxplan.sql。
SQL> connect sys/sys@colm2as sysdba;SQL> @C:\oracle\ora92\rdbms\admin\utlxplan.sql;SQL> create public synonym plan_table for plan_table;--建立同义词SQL> grant all on plan_table to public;--授权所有用户要在数据库中建立一个角色plustrace,用sys用户运行脚本plustrce.sql来创建这个角色,这个脚本在目录(UNIX:$ORACLE_HOME/sqlplus/admin, Windows:%ORACLE_HOME%\sql plus\admin)中;SQL> @C:\oracle\ora92\sqlplus\admin\plustrce.sql;然后将角色plustrace授予需要autotrace的用户;SQL>grant plustrace to public;经过以上步骤的设置,就可以在sql*plus中使用autotrace了,autotrace功能只能在SQL*PLUS里使用AUTOTRACE Statistics常用列解释db block gets :从buffer cache中读取的block的数量consistent gets:从buffer cache中读取的undo数据的block的数量physical reads: 从磁盘读取的block的数量redo size: DML生成的redo的大小sorts (memory):在内存执行的排序量sorts (disk):在磁盘上执行的排序量eg:SYS@db>set autotraceUsage: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT [ISTICS]]SYS@db>set timing onSYS@db>set autot trace exp statSYS@db>select* from tab;3809 rows selected.Elapsed: 00:00:00.06Execution Plan-------------------------------------------------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| ---------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1059 | 46596 | 216 (2)| | 1 | NESTED LOOPS OUTER | | 1059 | 46596 | 216 (2)| | 2 | TABLE ACCESS FULL | OBJ$ | 1059 | 39183 | 158 (2)| | 3 | TABLE ACCESS CLUSTER| TAB$ | 1 | 7 | 1 (0)| | 4 | INDEX UNIQUE SCAN | I_OBJ# | 1 | | 0 (0)|---------------------------------------------------------------------Note------ 'PLAN_TABLE' is old versionStatistics----------------------------------------------------------0 recursive calls0 db block gets9077 consistent gets0 physical reads0 redo size133502 bytes sent via SQL*Net to client3252 bytes received via SQL*Net from client255 SQL*Net roundtrips to/from client0 sorts (memory)0 sorts (disk)3809 rows processedb。