Oracle Text 安装

Applies To

All Users

Oracle E-Business Suite Technology Stack - Version 12.1.2 to Version 12.1.3

Summary

On : 11.2.0.4 version, Data Pump Import

While following the steps from the below documents, error occurs.

Export/import process for 12.0 or 12.1 using 11gR1 or 11gR2 ( Doc ID 741818.1 )

Section 2: Prepare a target Release 12 database instance >> Set CTXSYS parameter (conditional)

SQL> exec ctxsys.ctx_adm.set_parameter('file_access_role', 'public');

BEGIN ctxsys.ctx_adm.set_parameter('file_access_role', 'public'); END;

*

ERROR at line 1:

ORA-06550: line 1, column 7:

PLS-00201: identifier 'CTXSYS.CTX_ADM' must be declared

ORA-06550: line 1, column 7:

PL/SQL: Statement ignored

Solution

To implement the solution, please execute the following steps:

Check CTXSYS schema exists or not

SQL> select COMP_NAME,VERSION,STATUS,SCHEMA from dba_registry where COMP_NAME like '%Text%';

If the above query returns no rows, means oracle Text not installed whereas source instance it would have been installed

If you don't have CTXSYS schema, you need to install Oracle Text as following:

  1. Sqlplus / as sysdba

  2. @$ORACLE_HOME/ctx/admin/catctx.sql password sysaux temp NOLOCK

  3. connect CTXSYS/password

  4. @$ORACLE_HOME/ctx/admin/default/drdefus.sql

While performing the above steps, if below error is reported,

begin

*

ERROR at line 1:

ORA-04063: package body "CTXSYS.DRIXMD" has errors

ORA-06508: PL/SQL: could not find program unit being called: "CTXSYS.DRIXMD"

ORA-06512: at "CTXSYS.CTX_DDL", line 52

ORA-06512: at line 13

....

.....

begin

*

ERROR at line 1:

ORA-04063: package body "CTXSYS.DRIXMD" has errors

ORA-06508: PL/SQL: could not find program unit being called: "CTXSYS.DRIXMD"

ORA-06512: at "CTXSYS.DRUE", line 145

ORA-06512: at "CTXSYS.CTX_DDL", line 1143

ORA-04063: package body "CTXSYS.DRIXMD" has errors

ORA-06508: PL/SQL: could not find program unit being called: "CTXSYS.DRIXMD"

ORA-06512: at line 2

That indicates that the issue is with right privileges.

The exact problem is that PUBLIC does not have execute on some DBMS_..packages and those are required by Oracle Text.

To fix it, do followings:

  1. Sqlplus / as sysdba

  2. grant execute on DBMS_SCHEDULER to PUBLIC;

  3. grant execute on DBMS_JOB to PUBLIC;

  4. grant execute on UTL_FILE to PUBLIC;

  5. grant execute on UTL_HTTP to PUBLIC;

Now deinstall/install Oracle Text and if you try to execute the packages related to Oracle Text, it should ok:

  1. conn / as sysdba

  2. @ORACLE_HOME/ctx/admin/catnoctx.sql

(it will remove Oracle Text)

  1. drop procedure sys.validate_context;

  2. $ORACLE_HOME/ctx/admin/catctx.sql password sysaux temp NOLOCK

(Installing it again. The 'password' is an example. Any password can be given.)

  1. connect CTXSYS/password

  2. @$ORACLE_HOME/ctx/admin/default/drdefus.sql

  3. conn / as sysdba

  4. alter user CTXSYS account lock;

Cause

Oracle Text not installed or Permission not provided properly

CTXSYS Does not exists

FROM Target DB:

SQL> select COMP_NAME,VERSION,STATUS,SCHEMA from dba_registry where COMP_NAME like '%Text%';

no rows selected

References

MOS document id: 2387341.1

Product Versions

product: Oracle E-Business Suite Technology Stack - min_version: 12.1.2 - max_version: 12.1.3; Information in this article applies to GENERIC (All Platforms)

相关推荐
就叫飞六吧2 分钟前
防抖、幂等、唯一约束三件套 ;
数据库
神奇霸王龙21 分钟前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
鲸采云SRM采购管理系统28 分钟前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库
cfm_291430 分钟前
基于Binlog实现不停机数据库平滑迁移技术
运维·数据库·架构
Full Stack Developme31 分钟前
SQL 注入 的历史及设计工作原理
数据库·sql
Tisfy33 分钟前
Codex:通过编辑配置文件添加带Bearer的自定义MCP
数据库·大模型·agent·codex·mcp
哈__1 小时前
面向AI智能体的数据库专业技能包:将DBA工程经验封装为可调用能力
数据库·人工智能·dba
阿坤带你走近大数据1 小时前
SQL里where后面的1=1是干嘛的,走的是什么索引
数据库·sql
阿坤带你走近大数据1 小时前
SQL的执行顺序和书写顺序的介绍
数据库·sql·oracle
Poo_Chai2 小时前
QT emit信号后完整处理流程,包括槽函数响应流程
java·开发语言·数据库