使用expdp进行数据库逻辑完全备份导出

时间:2017-03-10 04:52:39

标签: sql database oracle oracle11g oracle12c

我写了以下命令:

create directory orcl_full as '/oradata3/datapump/full_export';
create user user1 identified by admin12;
grant read,write on directory orcl_full to user1;
grant exp_full_database to user1;

但是当我尝试使用expdp命令导出数据时,它不起作用:

expdp user1@ri/admin12@ORCL directory=orcl_full dumpfile=orclfull.dmp logfile=full_export.log FULL=YES;

这是我得到的错误:

  

ORA-31626:工作不存在   ORA-31633:无法创建主表" user1.SYS_EXPORT_FULL_05"
  ORA-06512:at" SYS.DBMS_SYS_ERROR",第95行   ORA-06512:at" SYS.KUPV $ FT",1048行   ORA-01950:桌面空间' USERS'

没有特权

我被困在这里,有人可以帮助我。在教程中,这个命令正在运行。

2 个答案:

答案 0 :(得分:0)

  

ORA-31626:工作不存在   ORA-31633:无法创建主表

Datapump使用主表来管理导出作业。像任何其他表一样,它需要存储,这意味着它需要写入表空间。

  

ORA-01950:桌面空间' USERS'没有特权。

创建user1帐户时,您没有授予任何表空间权限。因此,它无法创建任何表格,这就是作业失败的原因。解决方案非常简单:在USERS表空间上授予配额(如果没有为用户帐户指定其他表空间,则为默认表空间)。

alter user user1 quota unlimited on users;
  

"出现以下错误:SP2-0734:未知命令开始" expdp使用..." - 其余的行被忽略了。 "

expdp是操作系统可执行文件。您的错误是SQL * plus错误,它是一个SQL客户端。启动终端窗口并在那里运行OS命令,或使用host命令从SQL * Plus中弹出。

答案 1 :(得分:0)

expdp user1@ri15/$d_pass directory=orcl_full dumpfile=orclfull.dmp logfile=full_export.log FULL=YES;

此命令有效