How to Deinstall and Reinstall XML Database ORA-04063 XDB.DBMS_XDBUTIL_INT

2024-04-04 04:08

本文主要是介绍How to Deinstall and Reinstall XML Database ORA-04063 XDB.DBMS_XDBUTIL_INT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Csdn 论坛的一个朋友发了贴,说是exp 的时候报错。 错误信息如下:

EXP-00056: ORACLE error 4063 encountered
ORA-04063: package body "XDB.DBMS_XDBUTIL_INT" has errors
ORA-06508: PL/SQL: could not find program unit being called: "XDB.DBMS_XDBUTIL_INT"
ORA-06512: at line 1
EXP-00056: ORACLE error 4063 encountered
ORA-04063: package body "XDB.DBMS_XDBUTIL_INT" has errors
ORA-06508: PL/SQL: could not find program unit being called: "XDB.DBMS_XDBUTIL_INT"
ORA-06512: at line 1
EXP-00000: Export terminated unsuccessfully

 

一看又是XDB.DBMS_XDBUTIL_INT包的问题。 之前也看到过这个问题, 也整理了篇文章来说明:

 

Oracle 9i EXP XDB.DBMS_XDBUTIL_INT must be declared 
http://blog.csdn.net/tianlesoftware/archive/2010/04/17/5491811.aspx

 

楼主说这个对象是无效的,并且不能编译。 看来就只能重新安装了。 在metalink 上搜了一下。 相关信息如下。 


How to Deinstall and Reinstall XML Database (XDB) [ID 243554.1]

Applies to:

Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 10.2.0.5
Oracle Server - Personal Edition - Version: 9.2.0.1 to 10.2.0.5
Oracle Server - Standard Edition - Version: 9.2.0.1 to 10.2.0.5
Information in this document applies to any platform.

Purpose

This article provides the steps to manually deinstall and install the XML Database feature into a database that is version 9i R2 through 10g release 2.  THIS NOTE IS NOT FOR 11G and above.

WARNING FOR ALL READERS: If the XML DB features are currently being utilized and you have experienced an invalid XML DB repository or installation, point-in-time recovery to a point prior to when the problem occurred is recommended. XDB should not be reinstalled if the feature is being used. Please confirm whether XDB is being used in your environment prior to attempting reinstall. 

In addition, the following DB features also use XDB: Oracle Intermedia EXIF metadata, Oracle GEORASTER, EXFSYS, Oracle Locator

WARNING FOR 10g R2: For versions 10.2 and newer, if XDB is invalid the xdbrelod.sql script should be attempted first. Reinstallation procedures should only be performed when xdbrelod.sql was not successful in resolving the issue.

WARNING FOR 11G: This Note is not for 11g.

Scope and Application

This article is for DBA's that need to remove, install and/or reinstall the XDB feature into an existing Oracle database.
How to Deinstall and Reinstall XML Database (XDB)

XDB Reload Procedures for 10.2 and above.

SQL> conn / as sysdba

SQL> Shutdown Immediate;

SQL> Startup upgrade;

SQL> @?/rdbms/admin/xdbrelod.sql

alternatively xdbpatch.sql can be run both xdbpatch and xdbrelod perform the same actions.

SQL> Shutdown Immediate;

SQL> Startup

SQL> @?/rdbms/admin/utlrp.sql

Then check the error conditions that necessitated the steps in the first place. If the error condition is not resolved consider point in time recovery back to before the error state existed. If that is not an option proceed to removal and reinstall if on version 10.2 and below and you have read all the warnings. 

XDB SCHEMA REMOVAL STEPS:

WARNING: The steps to remove the XML Database feature (XDB schema) will completely remove the XDB repository including any user defined information contained within it.
Therefore, if there are any registered schemas or XML Database items created, you will be required to recreate all of your user defined structures, data and re-register all schemas previously registered.

If you are running Oracle Applications with iSetup see NOTE:402785.1 linked below.

WARNING: If you are on database release 10.1.x or 10.2.x the XDB Feature is Mandatory in order to use any of the member functions of the XMLTYPE. This is true even if you are not using the repository , or registered schema aspects of the XDB feature.

WARNING: This is not for 11g.

1. Shutdown and restart the database.
2. Connect as sysdba and run the catnoqm.sql script. Maintain a spool of the
script running:

UNIX: $ORACLE_HOME/rdbms/admin subdirectory
WINDOWS: $ORACLE_HOME/rdbms/admin subdirectory


For Example:

 SQL> set echo on
 SQL> spool xdb_removal.log
 SQL> @?/rdbms/admin/catnoqm.sql

3. Modify the init.ora file or spfile to include the following minimums to prepare the DB for reinstalling the XDB schema:

shared_pool_size =150M
java_pool_size =150M

4. Turn on AUTO EXTEND on the XDB tablespace.
If you do not want to do this , make sure you target a tablespace with at
least
.100 MB of free space for non-UTF8 DB
.150 MB of free space for an AL32UTF8 DB

5. Shutdown the database immediate, and startup the database normal

NOTE: Failure to restart the database at this step can cause XDB catqm.sql installation to fail with an internal error similar to the following: ORA-7445 [qmr_hdl_copy()+48]


XDB SCHEMA INSTALL STEPS: 

1. Connect as sysdba and run the catqm.sql script. Maintain a spool of the
script running:

UNIX: $ORACLE_HOME/rdbms/admin subdirectory
WINDOWS: $ORACLE_HOME/rdbms/admin subdirectory

The catqm.sql script requires the following parameters be passed to it when
run:
A. XDB user password
B. XDB user default tablespace  (You can use any tablespace other than system undo and temp. This tablespace has to exist prior to running the script.)
C. XDB user temporary tablespace
Therefore the syntax to run catqm.sql will be:
SQL> catqm.sql A B C

For Example:
SQL> set echo on
SQL> spool xdb_install.log
SQL>@?/rdbms/admin/catqm.sql XDB XDB TEMP

The Following Step is for Release 9.2.x ONLY skip to step 3 if running 10.1.x or above

2.Reconnect to SYS again and run the following to load the XDB java library.

SQL>@?/rdbms/admin/catxdbj.sql

NOTE: In order to load the XDB java libraries in catxdbj.sql, you must first have a valid Java Virtual Machine installation in the DB (JVM) and a valid XDK.
Also, make sure that the database is started with Oracle9i Release 2 (9.2.0) compatibility or higher for database version 9.2

3. If the following line is not already apart of the database system parameters (init.ora/spfile). 
NOTE: PLEASE REPLACE ,instanceid1,2 etc with your actual values

a. Non-RAC
dispatchers="(PROTOCOL=TCP) (SERVICE=<SID>XDB)"
b. RAC
instanceid1.dispatchers="(PROTOCOL=TCP) (SERVICE=<SID>XDB)"
instanceid2.dispatchers="(PROTOCOL=TCP) (SERVICE=<SID>XDB)"
etc ...
c.If you are not using the default Listener ensure you have set LOCAL_LISTENER in the (init.ora/spfile)
as prescribed for RAC/NON-RAC instances or the end points will not register.

4. Check for any invalid XDB owned objects:

SQL> select count(*) from dba_objects where owner='XDB' and status='INVALID';
 COUNT(*)
 ----------
 0

5. Check DBA_REGISTRY for XDB status:

SQL> select comp_name, status, version from DBA_REGISTRY where comp_name= 'Oracle XML Database'

The results should indicate the correct version and patch in a valid status.

6. Restart database and listener to enable Oracle XML DB protocol access.

NOTE:

If for any reason the catqm.sql script fails you can repeat the steps. However doing so May result in :

ORA-04098: trigger 'SYS.XDB_INSTALLATION_TRIGGER' is invalid and failed re-validation

If this occurs follow the steps in article:

NOTE:331378.1 - Running catqm.sql Leads to ORA-4098 Trigger 'SYS.XDB_INSTALLATION_TRIGGER' is Invalid

Click here to learn about XDB/XML training from Oracle University.

References

NOTE:402785.1 - iSetup dependency with Deinstall and Reinstall of XMLDB
NOTE:558834.1 - How To Re-register XML Schemas After XDB Has Been Re-installed?
NOTE:742014.1 - XDB 11g Install and Deinstall Note

这篇关于How to Deinstall and Reinstall XML Database ORA-04063 XDB.DBMS_XDBUTIL_INT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874762

相关文章

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

MySQL 衍生表(Derived Tables)的使用

《MySQL衍生表(DerivedTables)的使用》本文主要介绍了MySQL衍生表(DerivedTables)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学... 目录一、衍生表简介1.1 衍生表基本用法1.2 自定义列名1.3 衍生表的局限在SQL的查询语句select

MySQL 横向衍生表(Lateral Derived Tables)的实现

《MySQL横向衍生表(LateralDerivedTables)的实现》横向衍生表适用于在需要通过子查询获取中间结果集的场景,相对于普通衍生表,横向衍生表可以引用在其之前出现过的表名,本文就来... 目录一、横向衍生表用法示例1.1 用法示例1.2 使用建议前面我们介绍过mysql中的衍生表(From子句

六个案例搞懂mysql间隙锁

《六个案例搞懂mysql间隙锁》MySQL中的间隙是指索引中两个索引键之间的空间,间隙锁用于防止范围查询期间的幻读,本文主要介绍了六个案例搞懂mysql间隙锁,具有一定的参考价值,感兴趣的可以了解一下... 目录概念解释间隙锁详解间隙锁触发条件间隙锁加锁规则案例演示案例一:唯一索引等值锁定存在的数据案例二: