ORA-39192: table mode jobs with transportable=always and partition filters only allow objects from one table

文档解释

ORA-39192: table mode jobs with transportable=always and partition filters only allow objects from one table

Cause: Multiple tables are not supported when specifying partitions while using transportable table mode.

Action: Retry the job specifying only one table.

ORA-39192 错误

ORA-39192是一个由Oracle数据库系统报告的SQL错误。 这是由当table模式作业使用传输能力关键字“always”并且使用分区过滤器时发生的。这也出现在从源sql作业恢复到目标系统时。

错误说明

该错误仅拒绝从1个表导入对象,而不是多个表。它显示消息,如“ORA-39192:表模式作业与传输总是并且只有分区过滤器,只允许来自一个表的对象”。

常见案例

常见的案例是将数据从一个表移动到另一个表,然后尝试使用传输能力参数“always”,以及分区过滤器来加快导入对象的过程。当用户运行作业时,它们可能不知道它们仅允许一个表。

解决方案

最简单的解决方案是替换传输能力参数为“Always some”,因为 “always some”可以批准多个表。如果无法替换,请按以下步骤操作:

1. 取消选择传输能力“Always some”或者“never”参数,以防止发生此错误。

2. 使用一个导入对象命令,而不是数据泵,以便从一个表导出对象。

3. 使用SQL*Plus或SQL Developer来输出导出成像,以便在目标系统中导入。

4. 使用impdp来导入对象,而不是datapump table模式作业。

5. 通过在源系统上执行“Data Pump Reports”命令,不断检查进度。

6. 禁用并重新启用Data Pump Table模式作业,以重新恢复数据泵状态。

7. 当发现有性能瓶颈时,请采取措施来解决问题。

通过按照上述步骤,您可以解决ORA-39192:table mode jobs with transportable=always and partition filters only allow objects from one table错误。

你可能感兴趣的