oracle导出表904错误,月光软件站 - 编程文档 - 数据库 - EXP-00008: ORACLE error 904 encountered的解决方法...

【错误情况】

[oracle@ccdevsvr admin]$ exp wmap/pass@jackeydb

Export: Release 8.1.7.4.0 - Production on Fri Oct 8 11:28:37 2004

(c) Copyright 2000 Oracle Corporation.  All rights reserved.

Connected to: Oracle9i Release 9.2.0.1.0 - Production

JServer Release 9.2.0.1.0 - Production

Enter array fetch buffer size: 4096 >

Export file: expdat.dmp > host

(2)U(sers), or (3)T(ables): (2)U > u

Export grants (yes/no): yes >

Export table data (yes/no): yes >

Compress extents (yes/no): yes >

Export done in WE8ISO8859P1 character set and UTF8 NCHAR character set

server uses ZHS16GBK character set (possible charset conversion)

. exporting pre-schema procedural objects and actions

. exporting foreign function library names for user WMAP

. exporting object type definitions for user WMAP

About to export WMAP's objects ...

. exporting database links

. exporting sequence numbers

. exporting cluster definitions

. about to export WMAP's tables via Conventional Path ...

EXP-00008: ORACLE error 904 encountered

ORA-00904: "SPOLICY": invalid identifier

EXP-00000: Export terminated unsuccessfully

[oracle@ccdevsvr admin]$

【解决方法一】

<1017276.102>Bookmark Go to End 1017276.102><1017276.102>

fact: Oracle Server - Enterprise Edition

symptom: ORA-00904: Invalid column name

symptom: EXP-00008: ORACLE error %s encountered

cause: The package is missing, invalid or corrupt

fix:

How to handle ORA-00904 errors on Export

========================================

When running full database export the following errors will be returned:

exp80 user/password full=y file=D:\DB-Backup\ORCL\expORCL.dmp

log=D:\DB-Backup\ORCL\expORCL.log consistent=y buffer=40960000

EXP-00008: ORACLE error 904 encountered

ORA-00904: invalid column name

To get a clue what has force these ORA-00904 message, follow the following

steps:

1. Connect as privileged user and run the following command inside an

SQLPLUS session:

SQL> alter system set events='904 trace name errorstack';

-------------------------------- Note ------------------------------------

This event will work starting with Oracle8i. If running a Oracle database

version below Oracle8i, you'll get ORA-02065 errors returned, when

specifying this event. In Oracle versions below 8i you'll have to insert

the following entry into INIT.ORA

event="904 trace name errorstack"

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

2. Retry the FULL export. When the ORA-00904 occurs, a trace file will be

written to the storage location specified by the INIT.ORA parameter

'user_dump_dest'. As soon as the ORA-00904 has been returned to your

export session, you can abort the export and examine the trace information.

3. Disable event tracing by running the following command:

SQL> alter system set events='904 trace name errorstack off';

On Oracle versions below 8.1.5 return the event entry from INIT.ORA

4. Examine the trace file:

*** SESSION ID:(9.3) 2001.11.21.15.28.00.494

*** 2001.11.21.15.28.00.494

ksedmp: internal or fatal error

ORA-00904: invalid column name

Current SQL statement for this session:

SELECT fname,fsize,maxextend,inc FROM sys.exu8fil WHERE tsid = :1

===========

a) a problem with object EXU8FIL has been detected

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

In this example, there's a problem with the EXE8FIL view. To examine,

whether this object exist, run the following command:

SQL> select owner,object_name,object_type,object_id,status

from   dba_objects

where  object_name='EXU8FIL';

If the problem is on the EXU8FIL object you simply can recreate the

object by running the CATEXP.SQL script.

b) a problem with object DBMS_JAVA or DBMS_JAVA_TEST

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ksedmp: internal or fatal error

ORA-00904: invalid column name

Current SQL statement for this session:

SELECT SYNNAM, DBMS_JAVA.LONGNAME(SYNNAM), DBMS_JAVA.LONGNAME(SYNTAB), ...

On systems where the Java Server has been installed the trace file could

contain information on a failing select statement on DBMS_JAVA packages.

For reference on fixing errors relating to DBMS_JAVA, please follow

<1017276.102>.1017276.102>

【解决方法二】

If this error (ORA-904 invalid column name) occurs after applying a patch, this would probably fix the problem.

1. First, run CATEXP as INTERNAL. Then retry the export. Often times this will fix the problem and then export will run without error. The reason being a problem with object EXU8FIL view has been detected.

To examine, whether this object exist, run the following command:

SQL> select owner,object_name,object_type,object_id,status

from dba_objects

where object_name='EXU8FIL';

If the problem is on the EXU8FIL object you simply can recreate the object by running the CATEXP.SQL script.1017276.102>

down_info.asp?id=27303

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值