操作系统:soalris10
数据库版本:9i
日期:2013-2-19
问题:
使用exp导出时,出现EXP-00091 Exporting questionable statistics错误
分析:
[oracle10g@ ~]$ oerr exp 00091
00091, 00000, "Exporting questionable statistics."
// *Cause: Export was able export statistics, but the statistics may not be
// usuable. The statistics are questionable because one or more of
// the following happened during export: a row error occurred, client
// character set or NCHARSET does not match with the server, a query
// clause was specified on export, only certain partitions or
// subpartitions were exported, or a fatal error occurred while
// processing a table.
// *Action: To export non-questionable statistics, change the client character
// set or NCHARSET to match the server, export with no query clause,
// export complete tables. If desired, import parameters can be
// supplied so that only non-questionable statistics will be imported,
// and all questionable statistics will be recalculated.
00091, 00000, "Exporting questionable statistics."
// *Cause: Export was able export statistics, but the statistics may not be
// usuable. The statistics are questionable because one or more of
// the following happened during export: a row error occurred, client
// character set or NCHARSET does not match with the server, a query
// clause was specified on export, only certain partitions or
// subpartitions were exported, or a fatal error occurred while
// processing a table.
// *Action: To export non-questionable statistics, change the client character
// set or NCHARSET to match the server, export with no query clause,
// export complete tables. If desired, import parameters can be
// supplied so that only non-questionable statistics will be imported,
// and all questionable statistics will be recalculated.
大部分原因是由于字符集不同导致,检查数据库的客户机的字符集设置
数据库字符集:
客户机字符集:
字符集不同。
解决:
设置客户机的字符集:
$ export NLS_LANG=simplified chinese_china.zhs16gbk
exp username/password file=/bakdata/export/day_meta_task_result.dmp log=/bakdata/export/day_meta_task_result.log buffer=100000000 tables=day_meta_task_result query=\"WHERE time\>\'1358524800000\'\"
并理解了一下oerr对emp 00091的解释:
原因:导出操作能够导出统计信息,但统计信息可能不可用。统计信息是有问题的,因为在导出过程中发生了一个或多个下列的情形: 一行有错误发生, 客户端字符集或者NCHARSET参数和服务器不匹配,在导出中指定了一个query子句,仅仅导出了某些分区或子分区,或者处理表时发生致命错误.
操作:为了导出没有问题的统计信息,更改客户端的字符集设置或ncharset以和服务器匹配,使用没有query子句的导出操作,或导出完整的表。如果需要,可以提供输入参数,以便导入没有问题的统计信息,并且所有存在问题的统计信息将被重新计算。
操作:为了导出没有问题的统计信息,更改客户端的字符集设置或ncharset以和服务器匹配,使用没有query子句的导出操作,或导出完整的表。如果需要,可以提供输入参数,以便导入没有问题的统计信息,并且所有存在问题的统计信息将被重新计算。
原来,有很多原因都会产生此错误,查看导入语句发现,有query语句,并且导出表为分区表,只导出了部分分区的数据。但此错误应该不影响数据的导出。
总结:
网上搜索的结果大多数仅仅是针对字符集不同时的修改方法,其实导致EMP 00091错误的原因还有很多,在处理问题时应仔细看oracle给出的提示信息,一切结论的获得都应该以oracle官方资料为参考,而不是网上搜索的结果。
Speak Your Mind