expdp导出出现ORA-39373错误

源端Oracle 12.2
目标端Oracle12.1
由于高版本导出,导入到低版本,因此在导出的时候需要在导出语句中加入version=xxx参数。

expdp a/b@1.1.1.2:9999/hr directory=dp dumpfile=a0301.dmp logfile=expdp_a0301.log schemas=a CLUSTER=N version=12.1

ORA-39373报错是由于version参数导致的,参考MOS文档:12.2 DataPump Export (EXPDP) Using a Lower Export Client Fails Due To ORA-39373 (Doc ID 2369249.1)

In 12.2 Oracle database, the maximum length of identifiers is increased to 128 bytes for most identifiers, up from 30 bytes in previous releases.
Providing longer identifiers gives customers greater flexibility in defining their naming schemes, such as longer and more expressive table names.
Having longer identifiers also enables object name migration between databases with different character sets, such as Thai to Unicode.

12.1.0.2.0版本的数据库所支持的对象名长度为30字符,而在12.2.0.1.0及其以后的数据库已经解决了字符长度(最大长度128)限制的问题,因此导出的时候指定version=12.1,对象名长度超出30个字符,就会出现ORA-39373错误。

解决办法:

To avoid the error, there are two options available:

1/ Start the export using 12.2 expdp client.

- or -

2/ If an old expdp client version must be used or setting Datapump export parameter version to an earlier release to export a 12.2 database, rename the objects with a long identifier to a maximum 30 bytes length (30 characters) and restart the export.

在12CR2版本导入12CR1版本的过程中,由于高版数据库对象名长度限制是128个字符,而低版本对象名长度限制是30个字符,所以要找出高版本库中所有对象名长度超过30的对象,对他们进行删除或者重命名,否则会出现类似“ORA-39373”报错。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ORA-39002是Oracle数据库错误代码,与使用expdp命令导出数据时出现的问题有关。在Windows操作系统下,可能会遇到ORA-39002错误的多种情况。下面是几种常见的情况及其解决方法: 1. 数据库连接问题:首先要确保可以成功连接到Oracle数据库。可以使用sqlplus命令测试连接是否正常。如果连接失败,可能是数据库参数配置或者网络问题。需要检查数据库参数是否正确,并确保网络连接正常。 2. 导出目录权限问题:在执行expdp命令时,需要指定一个目录作为导出文件的存放位置。如果导出目录没有正确设置权限,也可能导致ORA-39002错误。应该确保导出目录所属用户具有写入权限,并且确认目录是否存在。 3. 数据库版本不兼容:在导出数据时,可能会由于数据库版本不兼容导致ORA-39002错误。此时需要检查Oracle数据库版本是否支持当前使用的expdp命令版本。如果版本不兼容,可以尝试升级数据库或使用对应版本的expdp命令。 4. 参数配置错误:在执行expdp命令时,需要指定一些参数,如导出的表名、导出的数据类型等。如果参数配置不正确,可能会导致ORA-39002错误。应该仔细检查expdp命令中的参数是否正确,并根据需要进行修改。 总之,遇到ORA-39002错误时,首先需要检查数据库连接是否正常,然后检查导出目录权限和数据库版本兼容性,最后确认参数配置是否正确。根据具体情况进行排查和解决,即可解决ORA-39002错误

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值