EXP a schema in Oracle 18c ORA1455
我在数据库中有一个架构,它不在数据库中作为 Oracle 18c 版本中的容器,我想使用 Oracle 工具 exp 对此架构进行逻辑备份,我总共有 2600 个表16 向我抛出错误:
EXP-00008: ORACLE error 1455 was encountered
ORA-01455: column conversion overflows data type integer
识别表并分析它们的共同点,我意识到它们有一个主键自动增量,并且它们至少有一个 CLOB 类型的列,其中 14 个表是空的,2 个有数据,已经放置了统计信息 = 无在导出时但仍然无法正常工作,我也尝试使用 expdp 工具执行此操作,但它总是向我抛出 .log 文件无法打开的错误,我希望他们能帮助我:(
- 不看代码就很难调试代码。为什么不实际向我们展示您完整、完整、准确的 \\’expdp\\’ 命令。 (根本没有理由在 18c 中使用 \\’exp\\’,除非您要使用 dmp 导入不支持 impdp 的非常旧的 oracle 版本。)
- 所以我尝试导出:expdp ari@orcl_sire dumpfile=ari.dmp logfile=exp_ari.log DIRECTORY=dir_prueba schemas=ARI
- 你有我可以遵循的可靠的 DATAPUMP 教程吗?
- 完整的官方文档位于 docs.oracle.com/en/database/oracle/oracle-database/18/sutil/??…
正如其他人所指出的,”exp” 被替换为 “expdp”。在使架构级数据泵导出工作方面,您需要以下内容:
1) 数据库服务器上可以写入的目录。你需要在数据库中创建一个目录对象来指向它,例如
1
2 |
create or replace directory MY_EXPORT as ‘/u01/myfolder’;
grant read, write on directory MY_EXPORT to ARI |
假设 “ARI” 是您在运行导出时将连接到的用户。
2) 数据泵命令与旧的 \\’exp\\’ 命令非常相似。
1
|
expdp ARI/ARIPASSWORD@ORCL schemas=ARI directory=MY_EXPORT dumpfile=ARI.dmp logfile=ARI.log
|
你应该很高兴。
- 非常感谢,我发现我的错误是我指向的目录,我将它定向到我服务器上的任何文件夹,但是在创建它时指向 \\’C: \\\\\\\\ app \\\\\\\\ oradata \\ \\\\\\\\’ 我可以使用 expdp
- 请注意,当您在数据库中创建目录对象时,它引用的 os 目录必须 1)安装在数据库服务器上 / 可用,并且 2)对作为 oracle 安装所有者的 os 用户具有读/写权限。
来源:https://www.codenong.com/62314874/