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 

  • 相关阅读:
    html 页面打印元素被切割,元素自适应分页
    linux jupyter 安装
    == 与 equals()的区别
    多段图
    数据仓库和ODS 的并行
    Linux下对sh文件的基本操作总结
    linux tr命令详解
    数据仓库分层
    利用SQOOP将数据从数据库导入到HDFS(并行导入,增量导入)
    Etl之HiveSql调优(left join where的位置)
  • 原文地址:https://www.cnblogs.com/ggykx/p/11818669.html
Copyright © 2011-2022 走看看