在导出数据库的时候遇到这个报错:ORA-39087: directory name DATA_PUMP_DIR is invalid
原因有2个:
1.没有这个目录
2.用户对这个目录没有读写权限
先排查一下是否有这个目录,命令如下:
SELECT directory_name, directory_path FROM all_directories WHERE directory_name = 'DATA_PUMP_DIR';
结果是没有这个目录
再切换另一个用户查询是否有这个目录,结果有。
推断这dev_ide用户对这个目录没有读写权限,需要登录sys或者system用户赋予权限,命令如下:
GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO dev_ide;
执行赋予权限操作后切换dev_ide用户查询该目录已存在
再执行导出命令,成功,问题解决。