`

oracle索引的跟踪

阅读更多

一、我们先通过一个例子具体说明“ALTER INDEX MONITORING USAGE”的使用方法:

1、建测试表

create table test(id number(3),name varchar2(10));

insert into test values(1,'aaaaaaaa');

insert into test values(2,'www.ncn.cn');

insert into test values(3,'aadfaaaa');

insert into test values(4,'gototop');

insert into test values(5,'shenzhen');

insert into test values(6,'china');

commit;

alter table test add (constraint test_pk primary key (id));

2、查询v$object_usage(因为没有监视,所以还看不到内容)

column index_name format a12

column monitoring format a10

column used format a4

column start_monitoring format a19

column end_monitoring format a19

select index_name,monitoring,used,start_monitoring,end_monitoring from v$object_usage;

SQL> l

1* select index_name,monitoring,used,start_monitoring,end_monitoring from v$object_usage

SQL> /

no rows selected

Elapsed: 00:00:00.00

3、开始监控索引的使用情况

SQL> alter index test_pk monitoring usage;

Index altered.

Elapsed: 00:00:00.05

4、查询v$object_usage(可以看到正监视中)

SQL> select index_name,monitoring,used,start_monitoring,end_monitoring from v$object_usage;

INDEX_NAME MONITORING USED START_MONITORING END_MONITORING

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

TEST_PK YES NO 05/15/2003 13:28:22

Elapsed: 00:00:00.00

5、使用索引进行查询

SQL> set autotrace on explain

SQL> select * from test where id = 2;

ID NAME

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

2 www.ncn.cn

Elapsed: 00:00:00.00

Execution Plan

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

0 SELECT STATEMENT Optimizer=CHOOSE

1 0 TABLE ACCESS (BY INDEX ROWID) OF 'TEST'

2 1 INDEX (UNIQUE SCAN) OF 'TEST_PK' (UNIQUE)

SQL> set autotrace off

SQL> /

ID NAME

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

2 www.ncn.cn

Elapsed: 00:00:00.00

SQL>

从上我们可以看到确实使用了索引。

6、查询v$object_usage(可以看到索引被使用过,但目前还处于被监视过程中)

SQL> select index_name,monitoring,used,start_monitoring,end_monitoring from v$object_usage;

INDEX_NAME MONITORING USED START_MONITORING END_MONITORING

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

TEST_PK YES YES 05/15/2003 13:28:22

Elapsed: 00:00:00.00

7、停止监视,并查询v$object_usage

SQL> alter index test_pk nomonitoring usage;

Index altered.

Elapsed: 00:00:05.03

SQL> select index_name,monitoring,used,start_monitoring,end_monitoring from v$object_usage;

INDEX_NAME MONITORING USED START_MONITORING END_MONITORING

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

TEST_PK NO YES 05/15/2003 13:28:22 05/15/2003 13:40:00

Elapsed: 00:00:00.64

到此为止,监视结束,MONITORING为NO,END_MONITORING给出了时间戳。

分享到:
评论

相关推荐

    oracle数据库跟踪工具

    Oracle数据库跟踪工具是一种高效且实用的软件,专用于监控那些基于Oracle数据库运行的应用程序。它可以帮助开发者、DBA(数据库管理员)以及系统管理员深入了解应用程序如何与数据库交互,从而优化SQL查询性能,排查...

    sql oracle跟踪器

    SQL Oracle跟踪器是一种强大的工具,专门用于监测和分析Oracle数据库中的SQL语句执行情况。它在数据库性能优化、问题诊断和资源管理等方面扮演着至关重要的角色。SQL Monitor 2.4.3.6是该工具的一个版本,它提供了一...

    Statement Tracer for Oracle,oracle代码跟踪工具

    "Statement Tracer for Oracle"是一个专门针对Oracle数据库的代码跟踪工具,它帮助开发者和DBA深入分析SQL语句的执行情况,从而提高数据库性能和解决问题。 Statement Tracer for Oracle的主要功能包括: 1. **...

    oratracer oracle数据库跟踪器

    "OraTracer"是一款专为Oracle数据库设计的跟踪工具,它帮助用户深入理解数据库的运行机制,找出性能瓶颈,并提供解决方案。下面我们将详细探讨OraTracer的功能、使用方法以及它在数据库管理中的重要性。 OraTracer...

    Oracle数据库sql语句 跟踪器

    Oracle数据库SQL语句跟踪器,通常被称为SQL Monitor,是一种强大的工具,用于监控和分析数据库中的SQL语句执行情况。在Oracle环境中,理解SQL语句的行为是优化数据库性能的关键。SQL Monitor提供实时视图,帮助DBA...

    Oracle跟踪事件

    Oracle 跟踪事件 Oracle 跟踪事件是 Oracle 数据库中的一种诊断工具,用于跟踪和分析数据库的内部结构和运行情况。该事件可以将 Oracle 各类内部结构中所包含的信息转储(dump)到跟踪文件中,以便用户能根据文件内容...

    oracle事件跟踪器

    Oracle事件跟踪器,也被称为SQL Trace或10046事件,是Oracle数据库提供的一种强大的诊断工具,用于收集关于数据库操作的详细信息。这个功能对于性能优化、问题排查以及理解数据库内部工作流程至关重要。在Oracle环境...

    oracle事件探查器

    在Oracle中,事件探查器通过启用特定的跟踪事件来工作,这些事件包括但不限于10046(用于跟踪执行计划和调用堆栈)、10053(用于跟踪优化器决策过程)和10040(用于跟踪服务器进程)。通过设置这些事件,我们可以...

    oracle程序跟踪软件

    在日常的数据库管理和性能优化过程中,跟踪Oracle程序执行过程是非常关键的步骤,它可以帮助我们定位问题、理解查询执行的细节以及优化SQL语句。"Oracle程序跟踪软件"即为实现这一目标的工具,例如"Statement_Tracer...

    SQLTracker Oracle跟踪工具(支持64位)

    SQLTracker是一款专为Oracle数据库设计的高性能监控工具,尤其针对64位操作系统,如win7和win10,提供强大的跟踪和分析功能。在数据库管理领域,了解并掌握SQLTracker对于提升数据库性能优化和问题排查至关重要。 ...

    ORACLE操作跟踪软件

    Oracle操作跟踪软件是一种专门用于监控和分析Oracle数据库系统运行情况的工具。在数据库管理中,跟踪是诊断和优化性能的关键步骤。"Statement Tracer for Oracle"可能是这样一款工具,它可能提供详细的SQL语句执行...

    如何监控Oracle索引的使用完全解析

    总的来说,监控Oracle索引的使用是数据库性能调优的重要一环。从Oracle 8i到9i的改进,表明Oracle数据库系统不断优化其管理和分析工具,以帮助管理员更好地理解和优化数据库的运行。理解并掌握这些监控方法,将有助...

    关于Oracle 9i中监视索引的使用介绍

    Oracle 9i引入了一个名为“监控使用”(MONITORING USAGE)的功能,使得DBA能够跟踪索引的使用情况。 要启用索引使用监控,可以使用以下SQL命令: ```sql ALTER INDEX index_name MONITORING USAGE; ``` 相反,若要...

    Oracle 9i中如何监视索引的使用情况

    通过这些新特性,DBA可以有效地跟踪和评估索引的效率,及时识别未使用的索引,进而进行清理或优化,以提高数据库的整体性能。定期检查并维护索引使用情况,对于避免不必要的资源浪费和提升系统响应速度具有重要意义...

    SQLTracker oracle跟踪工具

    SQLTracker是一款专为Oracle数据库设计的跟踪工具,它以绿色版的形式提供,无需安装,解压后即可直接运行,极大地便利了用户的使用。尤其适用于那些希望快速、便捷地对Oracle数据库中的SQL语句进行监控和分析的IT...

    SQL跟踪工具 Oracle 64位

    SQLTracker是一款专为监视在Oracle数据库上运行的应用程序而设计的高效工具,尤其适用于64位Windows操作系统,如Win7和Win10。这款工具旨在帮助数据库管理员(DBA)和开发人员深入理解SQL查询的执行性能,从而优化...

    oracle跟踪工具

    Oracle跟踪工具是数据库管理员和开发人员在排查性能问题、诊断错误以及优化SQL语句时的重要辅助工具。在Oracle数据库环境中,这些工具可以帮助我们收集关于数据库操作的详细信息,包括SQL语句、执行计划、资源使用...

    Oracle8i 数据库中B-tree索引的维护

    3. 空间管理:跟踪索引占用的空间,避免过度增长导致空间不足。 4. 索引冗余:避免创建不必要的索引,过多的索引会增加维护成本且可能影响写操作性能。 总的来说,理解和有效维护Oracle中的B-tree索引是确保数据库...

    Oracle 监控索引使用率脚本分享

    本篇文章将探讨如何通过自定义脚本来监控Oracle索引的使用率,并以此评估索引的有效性,以决定是否需要移除或优化。 首先,Oracle数据库提供了内置的统计信息收集功能,如DBMS_STATS包,用于跟踪索引的使用。然而,...

Global site tag (gtag.js) - Google Analytics