【问题标题】:importing a dmp file into Oracle 11g XE将 dmp 文件导入 Oracle 11g XE
【发布时间】:2012-06-26 10:41:10
【问题描述】:

我有一些 dmp 文件(由不同的用户生成)需要导入 MS SQL。我意识到我首先需要将文件导入 Oracle(我有 11g XE)。

我的问题是我不知道如何将文件导入 Oracle。我正在尝试 impdp 工具,但不断收到以下错误:

Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
ORA-39034: Table TABLE_DATA:"PO"."PO_VENDORS" does not exist.
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.UPATE_TD_ROW_IMP [15] 
TABLE_DATA:"PO"."PO_VENDORS"
ORA-31603: object "PO_VENDORS" of type TABLE not found in schema "PO"
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105
ORA-06512: at "SYS.KUPW$WORKER", line 8364

尝试使用和不使用 remap_tablespace,但甚至不确定为 remap 提供哪些参数。

【问题讨论】:

  • 你的 expdp 和 impdp 命令是什么?
  • 我没有创建转储文件,所以不知道 expdp 命令。至于impdp:
  • 抱歉,我还没来得及完成消息就送达了。我使用了filedump: filename.dmp 参数,没什么特别的,但似乎无法通过这个错误

标签: oracle import impdp


【解决方案1】:

来自日志;看起来您使用参数content=data_only 导出了表格,并且在您导入它时; Oracle 期望存在表结构和元数据。所以要么在没有content=data_only 参数的情况下导出 - 或者如果那不可能;创建表并重新导入。

【讨论】:

  • 有什么方法可以在不重新生成转储文件的情况下使用它?
  • @user1479246 是的 - 您必须在导入前预先创建表
  • 谢谢。我使用 SQLFILE 命令生成了一个 DDL,如下所示: ALTER SESSION SET EVENTS '10150 TRACE NAME CONTEXT FOREVER, LEVEL 1';更改会话集事件'10904 跟踪名称上下文永远,级别 1';更改会话集事件“25475 跟踪名称上下文永远,级别 1”;更改会话集事件'10407 跟踪名称上下文永远,级别 1';更改会话集事件“10851 跟踪名称上下文永远,级别 1”;更改会话集事件'22830 跟踪名称上下文永远,级别 192';这是否确认已使用 content=data_only 导出数据?
  • @user1479246 从上面的陈述中没有办法说。这些是用于设置跟踪文件而不是 DDL 语句的命令。
猜你喜欢
  • 2015-08-22
  • 2014-04-29
  • 1970-01-01
  • 2021-05-25
  • 2013-08-15
  • 1970-01-01
  • 1970-01-01
  • 2014-06-10
  • 1970-01-01
相关资源
最近更新 更多