【问题标题】:Impdp with remap failing on POST_TABLE_ACTION still using old schema在 POST_TABLE_ACTION 上重映射失败的 Impdp 仍然使用旧模式
【发布时间】:2018-01-25 16:31:59
【问题描述】:

我正在尝试在重新映射架构和表空间时导入 oracle 转储:

impdp usr/pass \
    EXCLUDE=table_statistics \
    DIRECTORY=EXPDP \
    REMAP_SCHEMA=ORG_USR:NEW_USR \
    REMAP_TABLESPACE=ORG_TS:NEW_TS \
    DUMPFILE=FILE.dmp \
    PARALLEL=2 \
    LOGFILE=FILE.imp.log

作业导入所有表,然后开始处理对象类型:

Import: Release 12.1.0.2.0 - Production on Thu Aug 17 11:13:06 2017

[ ... the import remaps correct ]

Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
. . imported "NEW_USR"."SOMETABLE"              112.4 MB 1402414 rows
. . imported "NEW_USR"."SOMEOTHERTABLE"                 235.9 MB  955249 rows
. . imported "NEW_USR"."SOMETABLE3"                 86.91 MB  440513 rows

[... everything works until ...]

Processing object type SCHEMA_EXPORT/TABLE/TRIGGER
Processing object type SCHEMA_EXPORT/STATISTICS/MARKER
Processing object type SCHEMA_EXPORT/TABLE/POST_TABLE_ACTION
ORA-39083: Object type POST_TABLE_ACTION failed to create with error:
ORA-01435: user does not exist
Failing sql is:
BEGIN
 SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEA');
 END;
ORA-39083: Object type POST_TABLE_ACTION failed to create with error:
ORA-01435: user does not exist
Failing sql is:
BEGIN
 SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEB');
 END;
ORA-39083: Object type POST_TABLE_ACTION failed to create with error:
ORA-01435: user does not exist
Failing sql is:
BEGIN
 SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEC');
 END;
Processing object type SCHEMA_EXPORT/MATERIALIZED_VIEW
Processing object type SCHEMA_EXPORT/TABLE/MATERIALIZED_VIEW_LOG
Job "SYSTEM"."SYS_IMPORT_FULL_01" completed with 3 error(s) at Thu Aug 17 11:19:02 2017 elapsed 0 00:05:56

我确实指定了REMAP_SCHEMAREMAP_TABLESPACE,导入运行大部分正确。

但在最后部分尝试Processing object type SCHEMA_EXPORT/TABLE/POST_TABLE_ACTION 它以某种方式使用旧用户失败。

谁能告诉我出了什么问题以及如何解决?

【问题讨论】:

  • 这看起来像错误 20736385。您可能需要提出 SR 以获得更多详细信息。 (Doc ID 2224305.1 也可能有点相关)。

标签: oracle schema remap impdp


【解决方案1】:

解决方案是导入不包括post_table_action 并在将模式名更改为正确值后手动执行语句:

impdp usr/pass \
    EXCLUDE=post_table_action \
    DIRECTORY=EXPDP \
    REMAP_SCHEMA=ORG_USR:NEW_USR \
    REMAP_TABLESPACE=ORG_TS:NEW_TS \
    DUMPFILE=FILE.dmp \
    PARALLEL=2 \
    LOGFILE=FILE.imp.log

BEGIN
SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEA');
END;
BEGIN
SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEB');
END;
BEGIN
SYS.DBMS_SNAPSHOT_UTL.SYNC_UP_LOG('ORG_USR','TABLEC');
END;

【讨论】:

    猜你喜欢
    • 2021-05-06
    • 1970-01-01
    • 2015-12-04
    • 2015-01-07
    • 2019-02-05
    • 2012-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多