Oracle 11g不能导出空表的问题解决

WBOY
发布: 2016-06-07 17:04:45
原创
807 人浏览过

使用Oracle 11g的朋友可能纠结过这样的问题,exp命令导出来的数据会莫名其妙的缺少一些表,分析过程中会发现这些表都是未插入过记

使用Oracle 11g的朋友可能纠结过这样的问题,exp命令导出来的数据会莫名其妙的缺少一些表,分析过程中会发现这些表都是未插入过记录的空表。问题造成的原因是oracle 11g引入了一个新特性,当新建表未插入数据的时候,服务器为了节约储存空间默认不会为这张表创建segment,所以我们导出数据的时候就导不出来空表信息,最终导致程序出错。

解决办法:

修改配置参数

sqlplus /nolog

SQL>connect system/password as sysdba;

SQL>show parameter deferred_segment_creation;

你会看到它默认为true,修改。

SQL>alter system set deferred_segment_creation=false;

重启oracle服务。

设置以后再创建的新表不插入数据也可以被导出,,但更改参数之前的空表仍未创建segment,需要手工对它们插入数据就可以生成segment。

linux

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!