Solved

Export terminated unsuccessfully [Error 4045]

Posted on 2001-06-18
9
2,005 Views
Last Modified: 2007-11-27
Hello All,
I am taking a full database export of my database, performing exp command as SYS user, and I executed catexp.sql also before the export. I am getting an error as follows , what is the reson for this error, anyone can help me to solve this

Regards

EXP-00008: ORACLE error 4045 encountered
ORA-04045: errors during recompilation/revalidation of SYS.DBMS_AQ_IMPORT_INTERNAL
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-905: object SYS.AQ$_SUBSCRIBERS is invalid
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at line 1
ORA-06512: at "SYS.DBMS_SYS_SQL", line 787
ORA-06512: at "SYS.DBMS_SQL", line 328
ORA-06512: at "SYS.DBMS_EXPORT_EXTENSION", line 82
ORA-06512: at "SYS.DBMS_EXPORT_EXTENSION", line 133
ORA-06512: at line 1
EXP-00000: Export terminated unsuccessfully
0
Comment
Question by:madappattu
  • 3
  • 2
  • 2
  • +2
9 Comments
 
LVL 2

Expert Comment

by:stmontgo
ID: 6202212
Do u have advanced replication set up? Did someone run catrep.sql?
0
 
LVL 2

Accepted Solution

by:
banicki earned 30 total points
ID: 6202548
actually this is related to several bugs on several releases... from 8.0.4 to 8.1.6
here is a partial list.  1314167, 1102966, 875427, 759735, 753384, 647800 and  Bug 1314167

there is a work around posted on metalink.

identify invalid system objects:
select 'alter type sys.'|| object_name || ' compile;'
 from all_objects
 where status = 'INVALID'
 and owner = 'SYS'
 and object_type = 'TYPE';

 you have to perform a drop operation on the queue_table even though you did not create any queue tables explicitly. Two queue tables are created by catdefrt.sql when a database is initialized.

 select * from dba_queue_tables;

 SYSTEM.DEF$_AQCALL

 execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQCALL');

 ORA-24012 "cannot drop QUEUE_TABLE, some queues in %s have
 not been dropped", you must use the force option in the procedure:

 execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQCALL', TRUE);
 -AND-
 execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQERROR', TRUE);

 This is a Bug in which two queue tables are created by catdefrt.sql when the
 database is initialized regardless of whether the Replication option is
 installed.
0
 

Author Comment

by:madappattu
ID: 6203302
Dear  banicki
I had tried to do the steps as you mentioned . but while exevuting
execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQCALL', TRUE);
-AND-
execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQERROR', TRUE);

this gives the following errors.



SQLWKS> execute dbms_aqadm.drop_queue_table ('SYSTEM.DEF$_AQERROR', TRUE);
BEGIN
*
ORA-04045: errors during recompilation/revalidation of SYS.DBMS_AQADM
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-905: object SYS.AQ$_SUBSCRIBERS is invalid
SQLWKS>
SQLWKS>
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 

Author Comment

by:madappattu
ID: 6205885
It worked Banicki, I did  alter SYS.AQ$_SUBSCRIBERS once again.
Thanks & Best Regards
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 6206257
I have corrected the grade from "B" to A", as you requested.

Moondancer
Community Support Moderator @ Experts Exchange
0
 
LVL 1

Expert Comment

by:merry_prince
ID: 8201872
Hello banicki,

After perform two drop statments, the view dba_queue_tables will be empty. If will it affect some function of oracle server? Need I re-run catdefrt.sql file?

Hope to hear from you. Thanks a lot.
0
 
LVL 2

Expert Comment

by:banicki
ID: 8203106
Man its been two years...
This is all tied to Advance Queueing.  Replication is dependent on AQ.  
Based on the wording of the workarounds...  If your using Replication or AQ, these tables are critical.
If your not,,,  I'm not sure if you need to recreate them or not...

Banic
0
 
LVL 1

Expert Comment

by:merry_prince
ID: 8207602
Can you introduce AQ summarily?
0
 
LVL 1

Expert Comment

by:merry_prince
ID: 8207780
If are AQ and Replication generally used for distributed databases?
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Question About Creating Primary Key Constraints on Oracle Tables... 5 47
constraint check 2 43
Require data to appear on a single line 2 46
PL/SQL Two changes 7 29
Working with Network Access Control Lists in Oracle 11g (part 1) Part 2: http://www.e-e.com/A_9074.html So, you upgraded to a shiny new 11g database and all of a sudden every program that used UTL_MAIL, UTL_SMTP, UTL_TCP, UTL_HTTP or any oth…
Background In several of the companies I have worked for, I noticed that corporate reporting is off loaded from the production database and done mainly on a clone database which needs to be kept up to date daily by various means, be it a logical…
This video shows information on the Oracle Data Dictionary, starting with the Oracle documentation, explaining the different types of Data Dictionary views available by group and permissions as well as giving examples on how to retrieve data from th…
Via a live example, show how to take different types of Oracle backups using RMAN.

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question