【问题标题】:import a oracle dumpfile导入一个 oracle 转储文件
【发布时间】:2013-09-27 17:24:11
【问题描述】:

我有一个 oracle 转储文件,我假设它是使用 exp 命令而不是 expdp 创建的

转储文件大约 4 GB,我想将它导入到我的 Oracle 11.2 数据库中。

创建的转储文件的表空间为“spaceA”,但我的表空间为“spaceB”

所以我也需要重新映射表空间。

我之前确实使用过 impdp 命令,它曾经工作得非常好,但据我所知猜测 impdp 只能用于转储文件,如果它是使用 expdp 导出的..

由于我对导出/导入的过程不是很熟悉,所以我想得到这方面的帮助

【问题讨论】:

    标签: oracle datapump oracle-dump


    【解决方案1】:

    如果表空间没有在 dmp 文件创建表语句中硬编码,那么您应该能够毫无问题地导入。所以我的建议是首先尝试以下方法(更多详情:http://docs.oracle.com/cd/E11882_01/server.112/e10701/original_import.htm

    imp user/password@instance file=FILE.dmp log=LOG.log fromuser=DMPSCHEMA touser=NEWSCHEMA
    

    如果您收到 IMP-00017 错误。然后你必须走更长的路线。您需要先创建表,然后使用 ignore=y 导入。

    首先创建表需要 DDL 语句,可以通过运行获得:

    imp user/password@instance file=FILE.dmp log=LOG.log full=y indexfile=INDEXFILE.log
    

    INDEXFILE.log 将包含所有创建表语句。查找并用“spaceB”替换“spaceA”,创建表,然后使用 ignore=y 参数运行导入,这将忽略表创建错误(因为表已经存在)并加载数据:

    imp user/password@instance file=FILE.dmp log=LOG.log fromuser=DMPSCHEMA touser=NEWSCHEMA ignore=y
    

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      • 2014-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-09
      相关资源
      最近更新 更多