gpt4 book ai didi

Oracle 数据泵导出脚本失败

转载 作者:行者123 更新时间:2023-12-02 11:34:04 25 4
gpt4 key购买 nike

我正在尝试对表空间上的元数据进行数据泵导出(类(class))。我走在正确的轨道上吗?我的数据泵目录创建为:

CREATE DIRECTORY dpump_dir AS '/mydata/data';

请记住我是初学者。这可能是也可能不是最好的方法,但我想尝试让它发挥作用。非常感谢。

declare
dp_handle number;
begin
dp_handle := dbms_datapump.open(
operation => 'EXPORT',
job_mode => 'TABLESPACE');

dbms_datapump.add_file(
handle => dp_handle,
filename => 'courses.dmp',
directory => 'dpump_dir');

dbms_datapump.add_file(
handle => dp_handle,
filename => 'courses.log',
directory => 'dpump_dir',
filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);

dbms_datapump.metadata_filter(
handle => dp_handle,
name => 'TABLESPACE_EXPR',
value => '''COURSE''');

dbms_datapump.start_job(dp_handle);

dbms_datapump.detach(dp_handle);
end;
/

ERROR at line 1:
ORA-39001: invalid argument value
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 79
ORA-06512: at "SYS.DBMS_DATAPUMP", line 2926
ORA-06512: at "SYS.DBMS_DATAPUMP", line 3162
ORA-06512: at line 8

最佳答案

失败的原因有很多:

  1. 您要写入的文件 (courses.dmp) 已经存在。甲骨文不会覆盖该文件。 (是的,错误消息非常蹩脚)
  2. 操作系统目录 /mydata/data 确实存在。
  3. /mydata/data 确实存在,但Oracle没有必要的访问目录的权限
  4. 以上都不是,但运行脚本的 Oracle 用户不是授予在 dpump_dir
  5. 上的 读取、写入权限

如果这些方法没有帮助,您可以首先打开 (add_file) *.log 文件,然后打开 *.dmp 文件。希望 Oracle 能够在 *.log 文件中写入一些有意义的内容。

关于Oracle 数据泵导出脚本失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3488489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com