xmltype oracle imp,【案例】Oracle报错EXP-00056 ORA-04063产生原因和MOS官方解决办法

【案例】Oracle报错EXP-00056 ORA-04063产生原因和MOS官方解决办法

时间:2016-10-28 10:24   来源:Oracle研究中心   作者:HTZ   点击:

天萃荷净

Oracle研究中心案例分析:运维DBA反映在做Oracle exp导出时遇到报错EXP-00056 ORA-04063,结合MOS官方解决办法为缺少视图导致。

通过exp全库导出的时候报下面的错误

1,版本与平台介绍

d:\wendang\SkyDrive\rs2\sql>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on 星期一 8月 18 15:19:36 2014

Copyright (c) 1982, 2011, Oracle. All rights reserved.

连接到:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> host uname -a

windows32 luoping 2.6.1 7601 i686-pc Intel unknown MinGW

SQL> select * from v$version where rownum<3;

BANNER

——————————————————————————–

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production

PL/SQL Release 11.2.0.3.0 – Production

2,错误信息

d:\wendang\SkyDrive\rs2\sql>exp system/oracle full=y file=e:\full.dmp indexes=n constraints=n

Export: Release 11.2.0.3.0 – Production on 星期一 8月 18 12:54:19 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

注: 将不导出表的索引

注: 将不导出表的约束条件

即将导出整个数据库…

. 正在导出表空间定义

. 正在导出概要文件

. 正在导出用户定义

. 正在导出角色

. 正在导出资源成本

. 正在导出回退段定义

. 正在导出数据库链接

. 正在导出序号

. 正在导出目录别名

. 正在导出上下文名称空间

. 正在导出外部函数库名

. 导出 PUBLIC 类型同义词

. 正在导出专用类型同义词

. 正在导出对象类型定义

. 正在导出系统过程对象和操作

. 正在导出 pre-schema 过程对象和操作

. 正在导出簇定义

EXP-00056: 遇到 ORACLE 错误 4063

ORA-04063: view "SYS.KU$_XMLSCHEMA_VIEW" 有错误

EXP-00056: 遇到 ORACLE 错误 4063

ORA-04063: view "SYS.KU$_XMLSCHEMA_VIEW" 有错误

EXP-00000: 导出终止失败

这里看到遇到视图不存在。

3,处理过程

3.1 10046trace过程编译过程

SQL> oradebug setmypid

已处理的语句

SQL> oradebug event 10046 trace name context forever,level 12;

已处理的语句

SQL> oradebug tracefile_name;

D:\APP\LUOPING\diag\rdbms\orcl\orcl\trace\orcl_ora_5824.trc

SQL> alter VIEW SYS.KU$_XMLSCHEMA_VIEW compile;

警告: 更改的视图带有编译错误。

3.2 查看无效对象

MEDADM RC PROCEDURE INVALID Invalid Obj

PUBLIC APEX_ADMIN SYNONYM INVALID Invalid Obj

PUBLIC EQUALS_PATH SYNONYM INVALID Invalid Obj

PUBLIC F SYNONYM INVALID Invalid Obj

OBJECT_OWNER OBJECT_NAME TYPE STATUS PROB

————— —————————————- ——————- ——- ———–

PUBLIC HTMLDB_ADMIN SYNONYM INVALID Invalid Obj

PUBLIC PATH_VIEW SYNONYM INVALID Invalid Obj

PUBLIC RESOURCE_VIEW SYNONYM INVALID Invalid Obj

PUBLIC UNDER_PATH SYNONYM INVALID Invalid Obj

XDB XDBHI_IDXTYP INDEXTYPE INVALID Invalid Obj

XDB EQUALS_PATH OPERATOR INVALID Invalid Obj

XDB UNDER_PATH OPERATOR INVALID Invalid Obj

XDB DBMS_RESCONFIG PACKAGE BODY INVALID Invalid Obj

XDB XDB_PV_TRIG TRIGGER INVALID Invalid Obj

XDB XDB_RV_TRIG TRIGGER INVALID Invalid Obj

XDB PATH_VIEW VIEW INVALID Invalid Obj

XDB RESOURCE_VIEW VIEW INVALID Invalid Obj

XDB DBMS_XMLDOM_ICD PACKAGE VALID Miss Pkg Body

XDB XDB_PVTRIG_PKG PACKAGE VALID Miss Pkg Body

这里可以看到xdb有很多无效的对象,估计是xdb的问题。

3.3手动重新运行xdb一些视图的创建

Rem NAME

Rem catmetx.sql – Metadata API: Real definitions for XDB object views.

SQL> @ /rdbms/admin/catmetx.sql

SQL> alter package xdb.xdb_funcimpl compile;

程序包已变更。

SQL> alter index xdb.xdbhi_idx rebuild;

alter index xdb.xdbhi_idx rebuild

*

第 1 行出现错误:

ORA-01418: 指定的索引不存在

SQL>

SQL> — view for xmlschemas

SQL> — this view is used for direct use of MDAPI; not for datapump

SQL> create or replace force view sys.ku$_xmlschema_view of sys.ku$_xmlschema_t

2 with object identifier (schemaoid) as

3 select ‘1’,’0′,

4 u.user#, u.name, x.schema_url, x.schema_id,

5 (case when x.local=’YES’ then 1 else 0 end

6 + case when x.binary=’YES’ then 2 else 0 end),

7 xlvl.lvl,

8 value(s).getClobVal(),

9 xdb.dbms_xdbutil_int.XMLSchemaStripUsername(XMLTYPE(

10 value(s).getClobVal()),

Oracleо11 u.name) — stripped

12 from sys.user$ u, sys.dba_xml_schemas x, xdb.xdb$schema s,

13 sys.dba_xmlschema_level_view xlvl

14 where x.owner=u.name and xlvl.schema_oid = x.schema_id and

15 s.sys_nc_oid$ = x.schema_id and

16 (SYS_CONTEXT(‘USERENV’,’CURRENT_USERID’) IN (u.user#, 0) OR

17 EXISTS ( SELECT * FROM session_roles

18 WHERE role=’SELECT_CATALOG_ROLE’ ))

19 /

警告: 创建的视图带有编译错误。

SQL> grant select on sys.ku$_xmlschema_view to public

2 /

grant select on sys.ku$_xmlschema_view to public

*

第 1 行出现错误:

ORA-04063: view "SYS.KU$_XMLSCHEMA_VIEW" 有错误

SQL> — ku$_table_xmlschema_view is used to find the xmlschemas directly referenced

SQL> — for xmltype columns/tables and dependent schemas referenced.

SQL> — elclude hidden xmlschemas (32768 set in xdb$schema flags)

SQL> create or replace view ku$_table_xmlschema_view as

2 select opq.obj# tabobj_num, opq.schemaoid schemaoid, opq.schemaoid par_oid

3 from sys.opqtype$ opq

4 UNION

5 select opq.obj# tabobj_num, sd.dep_schema_oid schemaoid, opq.schemaoid par_oid

6 from sys.opqtype$ opq, dba_xml_schema_dependency sd

7 start with

8 sd.schema_oid=opq.schemaoid and opq.type=1 and opq.schemaoid is not null

9 connect by nocycle

10 prior sd.dep_schema_oid=sd.schema_oid and

11 prior opq.schemaoid=opq.schemaoid and opq.type=1

12 /

视图已创建。

SQL> grant select on ku$_table_xmlschema_view to select_catalog_role

2 /

授权成功。

刚运行就开始报了一些错误。不过这里报错都很简单,就是一些索引,视图不存在。

3.4 手动创建视图与索引

SQL> CREATE INDEX XDB.XDBHI_IDX ON XDB.XDB$RESOURCE

2 (SYS_MAKEXML(‘8758D485E6004793E034080020B242C6’,734,"XMLEXTRA","XMLDATA"))

3 INDEXTYPE IS XDB.XDBHI_IDXTYP

4 NOPARALLEL;

索引已创建。

SQL> CREATE OR REPLACE FORCE VIEW SYS.DBA_XMLSCHEMA_LEVEL_VIEW_DUP

2 (

3 SCHEMA_URL,

4 SCHEMA_OWNER,

5 SCHEMA_OID,

6 LVL,

7 IN_CYCLE

8 )

9 AS

10 SELECT schema_url,

11 schema_owner,

12 schema_oid,

13 MAX (LEVEL) + 1,

14 CONNECT_BY_ISCYCLE

15 FROM DBA_XML_SCHEMA_DEPENDENCY

16 CONNECT BY NOCYCLE PRIOR schema_url = dep_schema_url

17 AND PRIOR schema_owner = dep_schema_owner

18 AND PRIOR schema_oid = dep_schema_oid

19 GROUP BY schema_url,

20 schema_owner,

21 schema_oid,

22 CONNECT_BY_ISCYCLE

23 UNION

24 SELECT x.xmldata.schema_url,

25 x.xmldata.schema_owner,

26 x.sys_nc_oid$,

27 1,

28 0

29 FROM xdb.xdb$schema x

30 WHERE x.xmldata.includes IS NULL AND x.xmldata.imports IS NULL;

视图已创建。

SQL> GRANT SELECT ON SYS.DBA_XMLSCHEMA_LEVEL_VIEW_DUP TO SELECT_CATALOG_ROLE;

授权成功。

SQL> CREATE OR REPLACE FORCE VIEW SYS.DBA_XMLSCHEMA_LEVEL_VIEW

2 (

3 SCHEMA_URL,

4 SCHEMA_OWNER,

5 SCHEMA_OID,

6 LVL

7 )

8 AS

9 SELECT l.schema_url,

10 l.schema_owner,

11 l.schema_oid,

12 l.lvl

13 FROM DBA_XMLSCHEMA_LEVEL_VIEW_DUP l

14 WHERE NOT EXISTS

15 (SELECT 1

16 FROM DBA_XMLSCHEMA_LEVEL_VIEW_DUP

17 WHERE schema_url = l.schema_url

18 AND schema_owner = l.schema_owner

19 AND schema_oid = l.schema_oid

20 AND in_cycle = 1)

21 UNION

22 SELECT l.schema_url,

23 l.schema_owner,

24 l.schema_oid,

25 0

26 FROM DBA_XMLSCHEMA_LEVEL_VIEW_DUP l

27 WHERE EXISTS

28 (SELECT 1

29 FROM DBA_XMLSCHEMA_LEVEL_VIEW_DUP

30 WHERE schema_url = l.schema_url

31 AND schema_owner = l.schema_owner

32 AND schema_oid = l.schema_oid

33 AND in_cycle = 1);

视图已创建。

SQL> grant select on sys.ku$_xmlschema_view to public

2 ;

授权成功。

SQL> CREATE OR REPLACE PUBLIC SYNONYM DBA_XMLSCHEMA_LEVEL_VIEW FOR SYS.DBA_XMLSCHEMA_LEVEL_VIEW;

同义词已创建。

SQL> GRANT SELECT ON SYS.DBA_XMLSCHEMA_LEVEL_VIEW TO PUBLIC;

授权成功。

再次运行catmetx.sql脚本,无任何报错

4 故障处理后结果

d:\wendang\SkyDrive\rs2\sql>exp system/oracle full=y file=e:\full.dmp indexes=n constraints=n

Export: Release 11.2.0.3.0 – Production on 星期一 8月 18 14:03:15 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

注: 将不导出表的索引

注: 将不导出表的约束条件

即将导出整个数据库…

. 正在导出表空间定义

. 正在导出概要文件

. 正在导出用户定义

. 正在导出角色

. 正在导出资源成本

. 正在导出回退段定义

. 正在导出数据库链接

. 正在导出序号

. 正在导出目录别名

. 正在导出上下文名称空间

. 正在导出外部函数库名

. 导出 PUBLIC 类型同义词

. 正在导出专用类型同义词

. 正在导出对象类型定义

. 正在导出系统过程对象和操作

. 正在导出 pre-schema 过程对象和操作

. 正在导出簇定义

. 即将导出 SYSTEM 的表通过常规路径…

没有报错了

这里已经看到开始导system用户的表,没有再出现之前的故障

本文固定链接: http://www.htz.pw/2014/08/18/exp-00056-ora-04063%e5%a4%84%e7%90%86%e8%bf%87%e7%a8%8b.html | 认真就输

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【案例】Oracle报错EXP-00056 ORA-04063产生原因和MOS官方解决办法

9bd101509341196819122f36086c9a60.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值