oracle数据库怎么查看ora类错误代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库怎么查看ora类错误代码相关的知识,希望对你有一定的参考价值。

参考技术A 在oracle的安装目录下,找NETWORK\ADMIN目录,比如C:\app\xxxx\product\11.2.0\dbhome_1\NETWORK\ADMIN
在这个目录下找tnsnames.ora,用一般的文本编辑程序都可以打开

或者直接在电脑中用搜索功能,搜索文件tnsnames.ora

oracle数据库打不开了 老是在alert.log里出现ORA-00600[6711]错误怎么办

oracle数据库打不开了 老是在alert.log里出现ORA-00600[6711]错误怎么办啊?

参考技术A 这个错误很可能说明是你的数据文件损坏了。具体查看那个文件损坏,在进行恢复,主要是alert日志,你要详细看 参考技术B

ORA-00600: internal error code, arguments: [6711], [4256248], [1], [4256242], [0], [], [], []

MOS上有一个关于6711内部错误十分简单的Note,该文档声称出现6711错误极有可能是部分类型为簇(cluster)的数据字典表存在潜在的讹误,这个Note甚至没有告诉我们该错误argument参数的意义。
不过其实我们可以猜出来,因为是和corruption相关的错误,那么实际上可能关联的几个因素无非是
obj#,file#,block#;4256248和4256242 两个数字像极了Data Block 
Address,把他们当做dba来看待,也就指向了1号数据文件的61938块和61944数据块,我们来看看这些块属于哪个对象:
SQL> set linesize 200;
SQL> select segment_name, segment_type
  2    from dba_extents
  3   where relative_fno = 1
  4     and (61938 between block_id and block_id + blocks or
  5         61944 between block_id and block_id + blocks);

SEGMENT_NAME                                                                      SEGMENT_TYPE
--------------------------------------------------------------------------------- ------------------
SMON_SCN_TO_TIME                                                                  CLUSTER
不出意料是一个cluster,SMON_SCN_TO_TIME是SMON_SCN_TIME表的基簇,SMON_SCN_TIME表用以记录数据库中scn对应的时间戳。我们直接查看用以创建数据字典的sql.bsq文件,可以进一步了解他们的结构:
cat $ORACLE_HOME/rdbms/admin/sql.bsq|grep -A 24 "create cluster smon_scn_to_time"
create cluster smon_scn_to_time (
  thread number                         /* thread, compatibility */
)
/
create index smon_scn_to_time_idx on cluster smon_scn_to_time
/
create table smon_scn_time (
  thread number,                         /* thread, compatibility */
  time_mp number,                        /* time this recent scn represents */
  time_dp date,                          /* time as date, compatibility */
  scn_wrp number,                        /* scn.wrp, compatibility */
  scn_bas number,                        /* scn.bas, compatibility */
  num_mappings number,
  tim_scn_map raw(1200),
  scn number default 0,                  /* scn */
  orig_thread number default 0           /* for downgrade */
) cluster smon_scn_to_time (thread)
/

create unique index smon_scn_time_tim_idx on smon_scn_time(time_mp)
/

create unique index smon_scn_time_scn_idx on smon_scn_time(scn)
/
从以上脚本可以看到这个簇上存在多个索引,我们需要进一步validate验证所有这些对象:
SQL> analyze table SMON_SCN_TIME validate structure;
Table analyzed.

SQL>analyze table SMON_SCN_TIME validate structure cascade;
Table analyzed.

SQL> analyze cluster SMON_SCN_TO_TIME validate structure;
Cluster analyzed.

SQL> analyze cluster SMON_SCN_TO_TIME validate structure cascade;
analyze cluster SMON_SCN_TO_TIME validate structure cascade
*
ERROR at line 1:
ORA-01499: table/index cross reference failure - see trace file




如果自己搞不定可以找ASKMACLEAN专业ORACLE数据库修复团队成员帮您恢复!

本回答被提问者采纳

以上是关于oracle数据库怎么查看ora类错误代码的主要内容,如果未能解决你的问题,请参考以下文章

oracle TNS:适配器错误问题

linux下安装好oracle12c,然后sqlplus启动出现如下问题ORA-01034、ORA-27101,求高手,linux如何启动orac

Orace 删除表空间后,数据库启动失败(ORA-01157,ORA-01110)

Orace 删除表空间后,数据库启动失败(ORA-01157,ORA-01110)

修改 oracle 数据库的 sys 账号密码,alter user sys identified by Aa123456@#_# * ERROR at line 1: ORA-01034: ORAC

oracle10登陆时提示“ORA—12560:TNS:协议适配器错误”怎么解决?