Oracle-exp的时候出现的EXP-00091错误如何理解?
利用Oracle数据库嘛,难免都会导入导出,笔者就碰到一个问题,使用exp的时候,出了如下错误:
EXP-00091 Exporting questionable statistics.
EXP-00091: 不審な統計をエクスポートしています。
使用的exp/imp语句如下:
exp S001/Password@TestDB_01 tables=T_S001_ATTACH query=\" WHERE substr ( upd_ymd,0,8 ) ='20200713' \" file=/home/s001/data/T_S001_ATTACH_test_20200713_1 ;
imp S001/Password@TestDB_02 tables=T_S001_ATTACH file=/home/s001/data/T_S001_ATTACH_test_20200713_1.dmp fromuser=S001 touser=S001 ignore=Y;
然后解决这个错误的时候,大家的做法大概有两种,一种比较简单粗暴,你不是统计出错了嘛,那就别导出啦,
在exp中添加一个STATISTICS=NONE语句。
exp S001/Password@TestDB_01 tables=T_S001_ATTACH query=\" WHERE substr ( upd_ymd,0,8 ) ='20200713' \" file=/home/s001/data/T_S001_ATTACH_test_20200713_1 STATISTICS=NONE;
这样导出的时候,就不会报错啦。
毕竟这样怪怪的嘛,出错了你就不要了,紧急的时候也就罢了,那到底要不要紧呢?
首要要从这到底是个什么东西说起。
<统计信息是什么>
统计信息主要是描述数据库中表,索引的大小,规模,数据分布状况等的一类信息。比如,表的行数,块数,平均每行的大小,索引的leaf blocks,索引字段的行数,不同值的大小等,都属于统计信息。
<统计信息用来干什么>
用途我觉得可能比较广吧。比如用于CBO(基于代价的优化器模式)评估COST生成执行计划。所以统计信息不准确,可能会影响业务的执行效率。
<导出的时候不导出也没关系吗?>
这个大概是我们最关系的问题了。
其实统计数据是Oracle自己内部可以再生成的,所以原则上不导入也没关系,导入之后别忘了再生成一下。
统计信息生成语句:※表单位或schema单位
execute dbms_stats.gather_table_stats(ownname=>'USERNAME',tabname=>'TABLE_NAME',cascade=>TRUE)
dbms_stats.gather_schema_stats(ownname => 'TEST',cascade => true)
并且,ORACLE会自动收集统计信息,当向表中插入/删除大量数据,数量量变化超过10%的时候系统会自动收集统计信息的。
我没有验证,imp的时候,岂止是10%,如果你是全表imp的话,那不就是100%?系统就自动帮你生成了吧?这个地方期待高手指摘啊。
还有一种做法,就是看这个错误的原因是什么,然后把修正一个,再导出,详细请参照下面的参考2.
大概就是说,错误的原因是数据库NLS_LANG(字符集)和系统环境变量NLS_LANG不一致,所以修改一个系统的NLS_LANG变量即可。
参考:
1,深入理解Oracle Statistic统计信息
https://www.cnblogs.com/princessd8251/articles/3568119.html
2,EXP-00091错误的说明和解决方法
https://blog.csdn.net/zyfromcq/article/details/84794740
3,TABLE_STATISTICS有什么用,impdp跳过以后有影响吗?
http://www.itpub.net/thread-1473101-1-1.html
4,EXP-00091
https://www.shift-the-oracle.com/oerrs/exp-00091.html
本文地址:https://blog.csdn.net/shi_ly/article/details/107317279
推荐阅读
-
如何正确理解PHP的错误信息
-
Oracle-exp的时候出现的EXP-00091错误如何理解?
-
花钿最早出现在什么时候?花钿是如何发展的?
-
帆软SQL报异常:多表连接的时候出现错误:未明确定义列
-
sqlserver还原数据库的时候出现提示无法打开备份设备的解决方法(设备出现错误或设备脱)
-
如何解决在接收邮件时出现错误号为0x800C0133的问题
-
如何正确理解PHP的错误信息
-
【我的Android进阶之旅】解决Android编译时候出现错误:java.util.zip.ZipException: zip file is empty
-
三眼火铳什么时候出现的?三眼火铳的威力究竟如何
-
整合ssm框架的时候出现错误org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[l