微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用DBMS_DATAPUMP API从不同架构导出表

如何解决使用DBMS_DATAPUMP API从不同架构导出表

我需要使用DBMS_DATAPUMP api从不同架构中导出表。 导出具有以下错误的0.5 GB数据后,以下脚本失败:

ORA-39126: Worker unexpected Fatal error in KUPW$WORKER.FETCH_XML_OBJECTS [JOB:"MySchama3"]
ORA-10260: limit size () of the PGA heap set by event 10261 exceeded
ORA-10260: limit size (1048576) of the PGA heap set by event 10261 exceeded
ORA-06512: at "SYS.DBMS_SYS_ERROR",line 95
ORA-06512: at "SYS.KUPW$WORKER",line 11252

脚本:

   h1 := dbms_datapump.open (operation => 'EXPORT',job_mode => 'SCHEMA',job_name => exportJobName); 
dbms_datapump.set_parallel(handle => h1,degree => 15); 
dbms_datapump.add_file(handle => h1,filename => exportLogFile,directory => exportLogDir,filetype => 3); 
dbms_datapump.set_parameter(handle => h1,name => 'KEEP_MASTER',value => 0); 
dbms_datapump.Metadata_filter(handle => h1,name => 'SCHEMA_LIST',value => q'|'MySchema1','MySchema2','MySchema3'|');
dbms_datapump.Metadata_filter(handle => h1,name => 'NAME_EXPR',value => q'|in ('Table1','Table2','Table3') |',object_path => 'TABLE');
dbms_datapump.set_parameter(handle => h1,name => 'ESTIMATE',value => 'BLOCKS'); 
dbms_datapump.add_file(handle => h1,filename => exportJobName || '_EXPDAT_' || to_char(systimestamp,'dd-mm-yyyy_hh24-mi-ss-FF') || '_%U.DMP',directory => exportStageDir,filetype => 1); 
dbms_datapump.set_parameter(handle => h1,name => 'INCLUDE_MetaDATA',value => 1); 
dbms_datapump.set_parameter(handle => h1,name => 'DATA_ACCESS_METHOD',value => 'AUTOMATIC'); 
dbms_datapump.set_parameter(handle => h1,name => 'COMPRESSION',value => 'ALL');
dbms_datapump.set_parameter(handle => h1,name => 'ENCRYPTION_ALGORITHM',value => 'AES256');
dbms_datapump.set_parameter(handle => h1,name => 'ENCRYPTION_PASSWORD',value => exportEncryptionPwd);
dbms_datapump.set_parameter(handle => h1,name => 'FLASHBACK_SCN',value => flashbackSCN);
dbms_datapump.Start_job(h1);
dbms_datapump.WAIT_FOR_JOB(h1,job_state);
dbms_datapump.Detach(h1); 
exception
    WHEN others THEN
        raise_application_error(-20001,'An error was encountered - '||sqlCODE||' -ERROR- '||sqlERRM);

解决方法

能否请您提供数据库版本和补丁程序级别?此外,使用有关内存分配(SGA / PGA)的详细信息可能会有所帮助。您是否尝试分配更多的PGA?

关于, 丹尼尔

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?