首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用DBMS_DATAPUMP应用编程接口从不同模式导出表

使用DBMS_DATAPUMP应用编程接口从不同模式导出表
EN

Stack Overflow用户
提问于 2020-11-06 18:39:56
回答 1查看 241关注 0票数 0

我需要使用DBMS_DATAPUMP接口从不同的模式中导出表。以下脚本在导出0.5 GB数据后出现故障,并出现以下错误:

代码语言:javascript
复制
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

脚本:

代码语言:javascript
复制
   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);
EN

回答 1

Stack Overflow用户

发布于 2020-11-06 19:18:54

您能提供数据库版本和补丁级别吗?此外,它还可以提供有关内存分配(SGA/PGA)的详细信息。你有没有试过分配更多的PGA?

问候你,大牛

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64713047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档