【问题标题】:Return code/ exit code for Oracle's DataPump APIOracle Data Pump API 的返回代码/退出代码
【发布时间】:2011-02-17 16:12:37
【问题描述】:

我将 oracle 的 IMPDP 和 EXPDP 包装在控制台中,找不到这两个返回的返回码的好地方。我想更具体地指出错误,而不仅仅是 0/1 通过/失败。

【问题讨论】:

  • 请说明你做了什么。您是否围绕 DBMS_DATAPUMP API 编写了存储过程?或者您是否围绕impdpexpdp 可执行文件编写了shell 脚本或类似的东西?
  • 很抱歉不够清晰。它使用 impdp 和 expdp 可执行文件,而不是使用 DBMS_DATAPUMP API 存储的过程。现在我认为后者会是更好的选择。
  • 这比那更糟糕 - 它似乎对我来说成功返回 5。这适用于 Oracle 11。
  • @Tom Anderson,我没有更多的时间来研究它,但它绝对不会让我眼前一亮。
  • 我认为是在实际执行导入时返回了5码,但过程中出现了某种警告。例如,与导入表关联的触发器无法编译。

标签: oracle exit-code datapump return-code impdp


【解决方案1】:

看起来 oracles DataPump 只返回三个退出代码。

  1. EX_SUCC 0 :导出或导入作业成功完成。如果有错误,则不会将错误显示到输出设备或记录在日志文件中。

    2.EX_SUCC_ERR 5:导出或导入作业成功完成,但在作业过程中遇到错误。错误会显示到输出设备并记录在日志文件中(如果有)。

    1. EX_FAIL 1:导出或导入作业遇到一个或多个致命错误。

http://docs.oracle.com/cd/E11882_01/server.112/e22490/dp_overview.htm#SUTIL3834

【讨论】:

    【解决方案2】:

    如果您为导入和导出指定唯一的作业名称,您可以检查all_scheduler_job_run_details 视图下的STATUSADDITIONAL_INFO(以及其他有用的列),了解成功/失败状态和遇到的任何错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-29
      • 2017-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-09
      • 1970-01-01
      相关资源
      最近更新 更多