使用exp导出报错EXP-00091
用exp导出数据时出现如下报错信息:
1)查询数据库的字符集
select userenv('language') from dual;
2)方案一:
设置Linux操作系统的NLS_LANG环境变量
[[email protected]]$ $export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
或是修改oracle用户下环境变量.bash_profile文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi # User specific environment and startup programs PATH=$PATH:$HOME /bin
export PATH
TMP= /tmp ; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE= /opt/oracle ; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE /product/10 .2.0 /db_1 ; export ORACLE_HOME
ORACLE_SID=report; export ORACLE_SID
LD_LIBRARY_PATH=$ORACLE_HOME /lib : /lib : /usr/lib ; export LD_LIBRARY_PATH
PATH=$ORACLE_HOME /bin :$PATH; export PATH
LANG=en_US.utf8; export LANG
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
|
Window系统的环境变量的修改方法是:
C:\>set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
方案二:
统计信息字段statistics设置为none。
exp user/[email protected] file=/home/a.dmp log=/home/a.log statistics=none
不再报错。但这种方式相当于未导出那些因字符集不一致错误的统计信息,导入自然也不会有这部分统计信息,如果需要,那么只能再重新收集统计信息。
因此针对这种exp报EXP-00091的错误,可以有上述两种方式workaround,但推荐的肯定还是方案1,导出的信息最全面。
本文转自ling118 51CTO博客,原文链接:http://blog.51cto.com/meiling/1721613,如需转载请自行联系原作者