oracle - 缺少 datapump_exp_full_database 角色
问题描述
我是甲骨文的新手。我想尝试导出和导入数据库。为此,我需要 datapump_exp_full_database 和 datapump_imp_full_database。当我尝试将这两个角色都授予用户时,它总是说缺少角色。因此,当我尝试检查 Oracle Enterprise Manager 上的数据泵角色以确保这两个角色都不存在时。我在这里做错了什么?当我尝试授予那里角色时,我已经以 SYS 身份登录。请耐心等待,因为我在这方面真的很新。提前致谢
我在 CentOS 6 32 位上使用 Oracle 10g 以下是我从企业管理器中获得的角色的屏幕截图:
更新:我尝试使用新创建的用户导出,我已授予 EXP_FULL_DATABASE 和 IMP_FULL_DATABASE。但还是做不到。一直导出失败。
我已经创建了 dpump_dir 目录。授予用户对 dpump_dir 进行 WRITE 和 READ 的权限 这是我运行的命令及其结果:
[oracle@localhost db_1]$ expdp XYZ/****@testdb01 directory=dpump_dir dumpfile=db_dumpfile.dmp logfile=expdp_dbdump.log FULL=YES;
出口:发布 10.2.0.1.0 - 2018 年 8 月 9 日星期四 2:39:41 生产
版权所有 (c) 2003、2005,甲骨文。版权所有。
连接到:Oracle 数据库 10g 版本 10.2.0.1.0 - 生产 ORA-39002:无效操作
ORA-39070: 无法打开日志文件。
ORA-29283: 无效的文件操作
ORA-06512:在“SYS.UTL_FILE”,第 475 行
ORA-29283: 无效的文件操作
解决方案
尽管版本 12 的 Oracle 文档确实提到了DATAPUMP_
角色,但版本 10(您正在使用)的文档仅提及EXP_FULL_DATABASE
. 所以你的安装可能很好(只是非常非常过时)。
该错误消息ORA-39070: Unable to open the log file.
似乎表明文件系统级别存在问题。
你应该检查
Oracle中的dpump_dir目录是否存在并指向已有目录:
SELECT * FROM ALL_DIRECTORIES
操作系统用户 oracle 是否对该目录具有必要的权限
此外,您可能想查看有关 10g 中数据泵的 Oracle Base 文章;它包含完整数据库导出的分步说明,其中包括所有必要步骤。
推荐阅读
- c - C中结构的动态内存分配问题
- r - 有条件的着色情节闪亮
- svg - 模式 svg 显示在页面上,但模式不显示
- docker - aws批处理docker容器中的张量板
- android - Android Studio 实时模板
- java - Camel:java.lang.IllegalArgumentException:必须指定 defaultEndpoint
- python - 如何从表中删除除前 5 名之外的所有记录
- javascript - 将照片从客户端的网络摄像头安全地发送到服务器
- c# - 从 XML 中提取文件路径和带空格的参数作为不同的字符串
- java - Gradle mavenLocal 找到 jar 但不包括用于编译