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:
-
Sqlplus / as sysdba
-
@$ORACLE_HOME/ctx/admin/catctx.sql password sysaux temp NOLOCK
-
connect CTXSYS/password
-
@$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:
-
Sqlplus / as sysdba
-
grant execute on DBMS_SCHEDULER to PUBLIC;
-
grant execute on DBMS_JOB to PUBLIC;
-
grant execute on UTL_FILE to PUBLIC;
-
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:
-
conn / as sysdba
-
@ORACLE_HOME/ctx/admin/catnoctx.sql
(it will remove Oracle Text)
-
drop procedure sys.validate_context;
-
$ORACLE_HOME/ctx/admin/catctx.sql password sysaux temp NOLOCK
(Installing it again. The 'password' is an example. Any password can be given.)
-
connect CTXSYS/password
-
@$ORACLE_HOME/ctx/admin/default/drdefus.sql
-
conn / as sysdba
-
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)