EXP-00091错误解决方法
Mar012012
今天客户的一批新测试数据被加载到试运行环境的数据库(OEL5.7,ORACLE11gR2),项目经理要求这批数据导入完成后将数据库做个备份,在用EXP做备份的时候,出现了EXP-00091错误,如下:
Export:Release 11.2.0.2.0-Production on Tue Feb 28 16:16:23 2012 Copyright(c)1982,2009,Oracle and/or its affiliates. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application T esting options Export done in US7ASCII character set and AL16UTF16 NCHAR character set server uses AL32UTF8 character set (possible charset conversion) About to export specified users ... . exporting pre-schema procedural objects and actions . exporting foreign function library names for user DIGITAL . exporting PUBLIC type synonyms . exporting private type synonyms . exporting object type definitions for user DIGITAL About to export DIGITAL's objects ... . exporting database links . exporting sequence numbers . exporting cluster definitions . about to export DIGITAL's tables via Conventional Path ... . . exporting table GUANWAINIAN 10218 rows exported EXP-00091: Exporting questionable statistics. . . exporting table IMAGE 0 rows exported EXP-00091: Exporting questionable statistics. . . exporting table T_BATCH_CHECK_COL 14 rows exported EXP-00091: Exporting questionable statistics. EXP-00091: Exporting questionable statistics. . . exporting table T_BATCH_COLUMN_R 1239 rows exported EXP-00091: Exporting questionable statistics. . . exporting table T_BATCH_EXPORT_INFO 20 rows exported EXP-00091: Exporting questionable statistics. EXP-00091: Exporting questionable statistics. . . exporting table T_BATCH_FILE_INFO 42 rows exported EXP-00091: Exporting questionable statistics. EXP-00091: Exporting questionable statistics. . . exporting table T_BATCH_INFO 45 rows exported
ORACLE提示操作系统使用US7ASCII字库,而数据库是AL32UTF8字符集,需要转换,查看数据库字符集:
SQL> select * from v$nls_parameters where parameter='NLS_CHARACTERSET'; PARAMETER VALUE ---------------- -------- NLS_CHARACTERSET AL32UTF8
查看操作系统用户ORACLE的NLS_LANG变量:
[oracle@fhacdb ~]$ env | grep NLS_LANG [oracle@fhacdb ~]$ echo $NLS_LANG
以上命令都没有结果返回,NLS_LANG变量没有设置,默认使用US7ASCII字库,修改NLS_LANG变量和数据库的字符集一致。
[oracle@fhacdb ~]$ export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
再次使用EXP导出数据,问题解决。
Export: Release 11.2.0.2.0 - Production on Tue Feb 28 16:33:20 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options Export done in AL32UTF8 character set and AL16UTF16 NCHAR character set About to export specified users ... . exporting pre-schema procedural objects and actions . exporting foreign function library names for user DIGITAL . exporting PUBLIC type synonyms . exporting private type synonyms . exporting object type definitions for user DIGITAL About to export DIGITAL's objects ... . exporting database links . exporting sequence numbers . exporting cluster definitions . about to export DIGITAL's tables via Conventional Path ... . . exporting table GUANWAINIAN 10218 rows exported . . exporting table IMAGE 0 rows exported . . exporting table T_BATCH_CHECK_COL 14 rows exported . . exporting table T_BATCH_COLUMN_R 1239 rows exported . . exporting table T_BATCH_EXPORT_INFO 20 rows exported . . exporting table T_BATCH_FILE_INFO 42 rows exported . . exporting table T_BATCH_INFO 45 rows exported . . exporting table T_BATCH_INFO_AUTOCHECK 0 rows exported . . exporting table T_BATCH_QUALITY 336 rows exported . . exporting table T_BATCH_STATISTICS 41 rows exported . . exporting table T_DICTIONARY 123371 rows exported ......
在EXP报错的时候,ORACLE已经提示客户端的字库和数据库的字符集不一致,需要转换。
Export done in US7ASCII character set and AL16UTF16 NCHAR character setserver uses AL32UTF8 character set (possible charset conversion) About to export specified users ...
而设置NLS_LANG和数据库的字符集一致后,由于字符集已经一致,ORACLE就不需要再提示。
Export done in AL32UTF8 character set and AL16UTF16 NCHAR character set About to export specified users ...
遇到问题时不要慌张,ORACLE的很多错误都会有详细的提示,一般只要细心观察,都会找到解决问题的方法。