gpt4 book ai didi

oracle - 如何确定 Oracle Data Pump 导出文件中的模式

转载 作者:行者123 更新时间:2023-12-03 07:35:52 26 4
gpt4 key购买 nike

  • 我有一个使用 expdp 创建的 Oracle 数据库备份文件 (.dmp)。
  • .dmp 文件是整个数据库的导出。
  • 我需要从此转储文件中恢复 1 个架构。
  • 我不知道此转储文件中的架构名称。
  • 要使用 impdp 导入数据,我需要加载架构的名称。

那么,我需要检查 .dmp 文件并列出其中的所有架构,该怎么做?

<小时/>

更新 (2008-09-18 13:02) - 更详细的信息:

我当前使用的 impdp 命令是:

impdp user/password@database directory=DPUMP_DIR 
dumpfile=EXPORT.DMP logfile=IMPORT.LOG

并且 DPUMP_DIR 已正确配置。

SQL> SELECT directory_path
2 FROM dba_directories
3 WHERE directory_name = 'DPUMP_DIR';

DIRECTORY_PATH
-------------------------
D:\directory_path\dpump_dir\

是的,EXPORT.DMP 文件实际上位于该文件夹中。

运行 impdp 命令时收到的错误消息是:

Connected to: Oracle Database 10g Enterprise Edition ...
ORA-31655: no data or metadata objects selected for the job
ORA-39154: Objects from foreign schemas have been removed from import

此错误消息大多是预期的。我需要 impdp 命令为:

impdp user/password@database directory=DPUMP_DIR dumpfile=EXPORT.DMP 
SCHEMAS=SOURCE_SCHEMA REMAP_SCHEMA=SOURCE_SCHEMA:MY_SCHEMA

但要做到这一点,我需要源架构。

最佳答案

如果您使用 SQLFILE parameter

impdp 会将 dmp 备份的 DDL 导出到文件中。例如,将其放入文本文件

impdp '/ as sysdba' dumpfile=<your .dmp file> logfile=import_log.txt sqlfile=ddl_dump.txt

然后检查 ddl_dump.txt 中的备份中的表空间、用户和架构。

根据文档,这实际上并没有修改数据库:

The SQL is not actually executed, and the target system remains unchanged.

关于oracle - 如何确定 Oracle Data Pump 导出文件中的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/95578/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com