Oracle 10g 索引结构信息查询问题

[复制链接]
查看11 | 回复3 | 2012-12-6 12:21:30 | 显示全部楼层 |阅读模式
本帖最后由 huweilong1030 于 2012-12-6 13:42 编辑
环境:虚拟机V7.0.1 + [红帽Linux.5.5] + Oracle 10g
建表:
create table index_test (id char(2000));复制代码
创建索引:
create index idx_test on index_test(id);复制代码
插入数据:
insert into index_test values (rpad(to_char(1*2),2000,'a'));
insert into index_test values (rpad(to_char(2*2),2000,'a'));
commit;
alter system checkpoint;复制代码
查询object_id:
SQL> select data_object_id,object_id from user_objects where object_name='INDEX_TEST';
DATA_OBJECT_ID OBJECT_ID
-------------- ----------
52937 52937
复制代码
dump索引结构信息:
alter session set events 'immediate trace name treedump level 52937;复制代码
查看dump信息:
[oracle@xiaohu-linux udump]$ ls -l
total 16
-rw-r----- 1 oracle dba 625 Dec 6 12:20 first_ora_16359.trc
-rw-r----- 1 oracle dba 682 Dec 6 12:20 first_ora_16385.trc
-rw-r----- 1 oracle dba 1836 Dec 6 12:20 first_ora_16387.trc
-rw-r----- 1 oracle dba 756 Dec 6 12:21 first_ora_16395.trc
[oracle@xiaohu-linux udump]$ cat first_ora_16395.trc
/opt/data/oracle/admin/first/udump/first_ora_16395.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /opt/data/oracle/product/10.2.0/db_1
System name: Linux
Node name: xiaohu-linux
Release: 2.6.18-194.el5xen
Version: #1 SMP Tue Mar 16 22:08:06 EDT 2010
Machine: i686
Instance name: first
Redo thread mounted by this instance: 1
Oracle process number: 14
Unix process pid: 16395, image: oracle@xiaohu-linux (TNS V1-V3)
*** ACTION NAME:() 2012-12-06 12:21:30.522
*** MODULE NAME:(SQL*Plus) 2012-12-06 12:21:30.522
*** SERVICE NAME:(SYS$USERS) 2012-12-06 12:21:30.522
*** SESSION ID:(160.5) 2012-12-06 12:21:30.522
kdxdtr: specified index object 52937 does not exist
[oracle@xiaohu-linux udump]$ cat first_ora_16395.trc 复制代码
提示信息:
specified index object 52937 does not exist
在网上找到一篇文章如下处理:
(文章来源:http://space.itpub.net/10248702/viewspace-668006作者:gdutllf2006)
DATA_OBJECT_ID OBJECT_ID SUBOBJECT_NAME
-------------- ---------- ------------------------------
33631 33631
alter session set events 'immediate trace name treedump level 33632';复制代码
不知为何查出来的object_id是33631,而dump时却用33632???
按照此种方法试了一下:
[oracle@xiaohu-linux udump]$ cat first_ora_16395.trc
/opt/data/oracle/admin/first/udump/first_ora_16395.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /opt/data/oracle/product/10.2.0/db_1
System name: Linux
Node name: xiaohu-linux
Release: 2.6.18-194.el5xen
Version: #1 SMP Tue Mar 16 22:08:06 EDT 2010
Machine: i686
Instance name: first
Redo thread mounted by this instance: 1
Oracle process number: 14
Unix process pid: 16395, image: oracle@xiaohu-linux (TNS V1-V3)
*** ACTION NAME:() 2012-12-06 12:21:30.522
*** MODULE NAME:(SQL*Plus) 2012-12-06 12:21:30.522
*** SERVICE NAME:(SYS$USERS) 2012-12-06 12:21:30.522
*** SESSION ID:(160.5) 2012-12-06 12:21:30.522
kdxdtr: specified index object 52937 does not exist
*** 2012-12-06 12:25:21.267
----- begin tree dump
leaf: 0x10001e4 16777700 (0: nrow: 2 rrow: 2)
----- end tree dump
[oracle@xiaohu-linux udump]$
复制代码
虽然也有那个提示信息,但索引结构信息出来了:
kdxdtr: specified index object 52937 does not exist
*** 2012-12-06 12:25:21.267
----- begin tree dump
leaf: 0x10001e4 16777700 (0: nrow: 2 rrow: 2)
----- end tree dump
不明白是何原因,Oracle 11g,dump时直接用的object_id即可,有一同事用Oracle 10g,也直接用object_id dump索引结构信息,请大牛们指点一二!!!
回复

使用道具 举报

千问 | 2012-12-6 12:21:30 | 显示全部楼层
顶一下!
没人遇到过着问题吗???
回复

使用道具 举报

千问 | 2012-12-6 12:21:30 | 显示全部楼层
帮你转到深入版?
回复

使用道具 举报

千问 | 2012-12-6 12:21:30 | 显示全部楼层


,谢谢版主
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行