如何获得X$表上的特殊索引信息?

    充分利用X$表上的特殊索引, 可以加快对性能视图的访问速度, 从而编译高效的性能监控程序. Oracle提供了一个视图可以用来查询在X$表的那些列上有这样的索引存在, 如下所示:

SQL> DESC V$INDEXED_FIXED_COLUMN
Name                 Null?    Type
-------------------- -------- -------------
TABLE_NAME                    VARCHAR2(30)
INDEX_NUMBER                  NUMBER
COLUMN_NAME                   VARCHAR2(30)
COLUMN_POSITION               NUMBER

    有时我感觉查询V$SYSSTAT中的记录都有些慢, 看看它上面有没有索引进技术, 先用AUTOTRACE看一下这个视图的X$表是那一个.

SQL> SELECT * FROM V$SYSSTAT;

-------------------------------------------------------
| Id  | Operation        | Name       | Rows  | Bytes |
-------------------------------------------------------
|   0 | SELECT STATEMENT |            |     1 |    99 |
|*  1 |  FIXED TABLE FULL| X$KSUSGSTA |     1 |    99 |
-------------------------------------------------------

    在9i中这个基表是有一个索引存在的, 对应于STATISTIC#这一列, 不过在10g中没有了, 不知道为什么取消了?

SQL> SELECT * FROM V$INDEXED_FIXED_COLUMN WHERE TABLE_NAME='X$KSUSGSTA';

no rows selected

    否则我又想要化简为烦, 来进行UNION ALL了.

发表留言:

« Previous | Main | Next »

英语900句 | English 900

  • I am a Michael Jordan fan.
  • 我是迈克尔·乔丹迷.
  • Does his film appeal to you?
  • 你喜欢他的电影吗?
  • Do you go on picnics?
  • 你常去郊游吗?
  • I particularly like English literature.
  • 我对英国文学情有独钟.
  • What's so interesting about football? We girls don't like it.
  • 足球有什么意思? 我们女生不喜欢它.