用生产库64位LINUX导入windows测试库。
中添加TABLE_EXISTS_ACTION=respace重建已有数据。
报错queue_table too long,按照下文方法,删除表或者使用truncate参数重建即可。
----------------------------------------------------------------------------------------------------------------
转至https://blog.51cto.com/929044991/1148614
在从32位的10.2.0.2版本的生产数据库导入到64位11.2.0.1的版本中,在IMPDP导入新库的时候碰到如下的错误代码:
Applies to:
Oracle Server - Enterprise Edition - Version 9.2.0.8 to 11.1.0.7 [Release 9.2 to 11.1]
Information in this document applies to any platform.
***Checked for relevance on 17-May-2012*** Problem Statement
Datapump Import fails with the following errors:
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.PROCESS_TABLE_EXISTS_ACTION
[TABLE:"APPLSYS"."AQ$_FND_CP_TM_RET_AQTBL_T"]
ORA-24019: identifier for QUEUE_TABLE too long, should not be greater than 24 characters
ORA-00955: name is already used by an existing object
Error ORA-24019 is self-explanatory: the queue table name is 25 characters long, whereas only 24 are allowed.
There are restrictions in regards to the names of the queue_tables:
Oracle Streams Advanced Queuing User‘s Guide and Reference 10g Release 2 (10.2)
Chapter 8 Oracle Streams AQ Administrative Interface
DBMS_AQADM.CREATE_QUEUE_TABLE --> Queue table names must not be longer than 24 characters.
If you attempt to create a queue table with a longer name, error ORA-24019 results
Solution
In normal case the way to resolve this is to either exclude this queue from being imported and then manually create it afterwards, or recreate the queue in the source database with a valid name (<= 24 characters) and export and import into the destination database.
But since it is followed by ORA-00955: name is already used by an existing object,then in this case, the first thing to check would be whether the interested queue_tables do have messages or are empty.
If the queue_tables are empty then prior to import they would need to be dropped as follow:
At the TARGET Database:
1) Drop queue_table with force parameter set to TRUE,the queue table name is FND_CP_TM_RET_AQTBL as shown:
connect / as sysdba
Begin
dbms_aqadm.drop_queue_table (‘APPLSYS.FND_CP_TM_RET_AQTBL‘,TRUE);
End;
/
2) Re-run the IMPDP
OR
Use the TABLE_EXISTS_ACTION=TRUNCATE option - this deletes existing rows and then loads rows from the source
原文地址:https://www.cnblogs.com/ggykx/p/11818669.html