zoukankan      html  css  js  c++  java
  • Impdp导入报queue_table too long失败解决方法

    用生产库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 

  • 相关阅读:
    数据库设计Step by Step篇目整理及下载地址
    SQL puzzles and answers读书笔记——预算执行问题
    MongoDB快速入门——SQL与MongoDB的对照
    C语言中的atan和atan2
    FTP命令
    vueelementadmin前端跨域问题解决
    回归
    学习kvm(一)
    利用spicevdagent实现文本拷贝、鼠标非陷入
    政策转向确立,降准只是开始
  • 原文地址:https://www.cnblogs.com/ggykx/p/11818669.html
Copyright © 2011-2022 走看看