Oracle 11G在用EXP 导出时,空表导不出的解决方案

oracle exp命令导出过程,如下图

Oracle <wbr>11G在用EXP <wbr>导出时,空表导不出的解决方案
oracle imp命令导入过程,如下图

Oracle <wbr>11G在用EXP <wbr>导出时,空表导不出的解决方案

11G中有个新特性,当表无数据时,不分配segment,以节省空间。

解决方法:设置deferred_segment_creation 参数,具体步骤如下。

步骤一:执行命令 alter system set deferred_segment_creation=false;

步骤二:执行命令 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0

步骤三:把步骤二查询的结果导出,执行导出的语句。

说明
deferred_segment_creation参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。
需注意的是deferred_segment_creation值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。如需导出之前的空表,就需要执行步骤二、三。

 

土豪请注意: 如果您觉得此文有帮助,可以给支付宝账户zuiyanwangyue@126.com转账进行打赏(可扫描右侧二维码),您的捐助将被用于完善此网站的功能和内容。
加入我们团队: 如果你是技术控并且愿意分享自己掌握的知识,欢迎加入我们团队,请联系QQ:421712311 如本文未能解决您面临的问题,也欢迎随时和我联系以便进一步探讨。

评论列表[0]