EXP-00091解决方法

oracle常用的导出数据工具是exp,但是偶尔会出现错误exp-00091,本人就有幸遇到,数据那可是容不得一点错误地,遂解决之。
附上解决方案如下:

问题描述

产生的原因是因为我们exp工具所在的环境变量中的NLS_LANG与DB中的NLS_CHARACTERSET不一致。
导出报错截图

解决方式

⑴ 我们来查看DB中的NLS_CHARACTERSET的值:

SQL>  select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET';   

结果:

PARAMETERVALUE
NLS_CHARACTERSETAL32UTF8

或者

SQL> select * from v$nls_parameters  where parameter='NLS_CHARACTERSET';   

结果:

PARAMETERVALUE
NLS_CHARACTERSETAL32UTF8

或者

SQL> select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET';

结果:

PARAMETERVALUE
NLS_CHARACTERSETAL32UTF8

⑵ 查看环境变量中的NLS_LANG

Linux系统:

[oracle@root: ~]$echo $NLS_LANG

结果:

AMERICAN_AMERICA.ZHS16CGB231280     --果然与DB中NLS_CHARACTERSET=AL32UTF8不同

windows系统:右键”我的电脑“>属性>高级系统设置>环境变量
查看环境变量步骤
查看图中5中的 NLS_LANG是否与(1)中查询的一致(我这里更改后的,所以是一样的)。

⑶ 根据⑴查出的NLS_CHARACTERSET(AL32UTF8)来设定exp的环境变量:

windows系统:

C:\Users\Administrator> set NLS_LANG=AMERICAN_AMERICA.AL32UTF8

Linux系统:

[oracle@root: ~]$export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
[oracle@root: ~]$echo $NLS_LANG
AMERICAN_AMERICA.AL32UTF8      --设置与DB中NLS_CHARACTERSET=AL32UTF8相同。

⑷ 再来EXP导出数据 查看log中是否还有EXP-00091报错?

修改后的导出截图
Export terminated successfully without warnings. --成功导出且没警告。

EXP-00091问题已经解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yang JZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值