如何在不导入的情况下从 .dmp 文件中列出 Oracle 中的所有模式和表空间?
Posted
技术标签:
【中文标题】如何在不导入的情况下从 .dmp 文件中列出 Oracle 中的所有模式和表空间?【英文标题】:How to list all schemas and tablespaces in Oracle from .dmp file without importing? 【发布时间】:2021-01-02 15:03:08 【问题描述】:所以,问题在于我有客户使用 exp 或 expdp 导出的 .DMP 文件。 我想获取一些 .dmp 属性,就像我在 SQLServer 中使用以下命令一样:
RESTORE HEADERONLY FROM DISK = N"C:\temp\myfile.bak";
原始表空间和架构是我需要在不使用任何图形工具(如 SQL Developer)的情况下重新映射到新文件的信息,然后使用正确的属性值,以编程方式将其导入我的环境。
我尝试使用 CSharp 构建 StreamReader,并阅读转储,我得到了很多信息,但我没有看到获取模式的模式。 是否可以在 Oracle 中运行类似“RESTORE HEADERONLY”的命令?
【问题讨论】:
【参考方案1】:你应该使用impdp的SQLFILE参数。只需将您的转储放入服务器上的 DATA_PUMP_DIR 并使用 impdp:
impdp hr DIRECTORY=DATAP_PUMP_DIR DUMPFILE=expfull.dmp SQLFILE=DATAP_PUMP_DIR:expfull.sql
【讨论】:
谢谢!使用 .sql 文件,我可以读取以获取属性。以上是关于如何在不导入的情况下从 .dmp 文件中列出 Oracle 中的所有模式和表空间?的主要内容,如果未能解决你的问题,请参考以下文章
如何在不导入第一个 UIViewController 类的情况下从 UINavigationController 中的另一个 UIViewController 手动释放 UIViewControlle
Dart - 一个 dart 项目如何在不使用 pub 的情况下从另一个 dart 项目导入代码?