一、错误信息
在使用expdp导出oracle11g数据库,执行命令expdp doms/doms@orcl schemas=doms dumpfile=doms.dmp content=data_only directory=doms_dump;
,一直报错:
ORA-39002: 操作无效
ORA-39070: 无法打开日志文件。
ORA-39087: 目录名 DOMS_DUMP; 无效
详细信息如下:
C:\Documents and Settings\Administrator>expdp doms/doms@orcl schemas=doms dumpfile=doms.dmp content=data_only directory=doms_dump;
Export: Release 11.2.0.1.0 - Production on 星期一 4月 2 10:02:03 2018
Copyright (c) 1982,2009,Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning,OLAP,Data Mining and Real Application Testing options
ORA-39002: 操作无效
ORA-39070: 无法打开日志文件。
ORA-39087: 目录名 DOMS_DUMP; 无效
二、查看数据库中创建的目录
管理员执行sqlselect * from dba_directories
,查看创建的目录,如下图
三、问题原因
通过上面可以看到数据库中已经创建好了目录doms_dump
,但是为什么导出时还会报目录名无效呢?
再回头仔细看错误信息,错误信息里的目录名竟然带分号;
,怪不得目录名无效呢,根本没有doms_dump;
目录。
去掉最后的分号,再次执行,不再报错。
导出报错,都是分号;
惹的祸,我们写sql时习惯性的会加个分号结尾,需要注意的是命令行expdp时最后不能加分号,否则会把分号作为参数的值处理