11g r2中有个新特性,当表无数据时,不分配segment,以节省空间,可是在用EXPORT导出时,空表也不能导出,这就导致迁移时候丢失了一些表
解决方法:
一、 insert一行,再rollback就产生segment了。
该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导出空表。
二、 设置deferred_segment_creation参数
该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。修改SQL语句:
alter system set deferred_segment_creation=false scope=both;
需注意的是:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。如需导出之前的空表,只能用第一种方法。
三、 用以下这句查找空表并分配空间
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
把SQL查询的结果导出,然后执行导出的语句,强行为表分配空间修改segment值,然后再导出即可导出空表了。
分享到:
相关推荐
oracle 11g R2 新增的特性,exp无法导出空表,可以通过expdp命令导出,具体在附件里。
关于R2无法exp出空表的方法。考虑到节省空间,oracle11g r2不给空表分配segment,具体办法见附件。
exp无法导出空表解决方法的总结脚本
Oracle11g使用exp导出空表,解决备份无法导出空表的问题
数据库导出时候因为版本问题,导出空表时候会报错,这里有解决办法。
oracle11g对于空表用exp不能导出的解决办法.txt
在11g上用exp导出数据库时,空表会不被导出,这里提供2种方法命令,供大家使用
主要介绍了ORACLE EXP不能导出空表的原因分析及解决方法,大家参考使用吧
在ORCAL11G采用exp导出.dmp文件时候,如果有表没有数据为空表时候,不能导出表的解决办法。
exp命令导出oracle11g的数据库时,空表会出现错误
文档有为什么oracle 11g不能导出空白,导出空表的详细操作方法(很简便哦)
执行EXP导出时,部分表提示 EXP-00011:表不存在错误,但是查询user_all_tables视图,此表确实是存在的,并且执行select语句也能成功,不过表为空表,查看权限等也没有问题。后来通过查询资料,发现问题是由Deferred ...
ORACLE 11gR2新特性延迟段创建导致EXP导不出空表的原因探究以及解决过程
如果当前用户下的数据库中存在空表时,执行exp备份时由于该表新建时,并没有向其中插入数据,那么这个表不会立即分配extent,也就是不占数据空间,只有当你insert数据后才分配空间。这样可以节省少量的空间。但是...
1、Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会导出。 2、设置deferred_segment_creation 参数为FALSE后,无论是空表还是非空表,都分配segment。 在sqlplus中,执行如下命令: ...
6.算法可以用不同的语言描述,如果用C 语言或 PASCAL语言等高级语言来描述,则算法实际上就是程序 了。( )【西安交通大学 1996 二、7(3分)】 7.程序一定是算法。( )【燕山大学 1998 二、2(2分)并改错】 8....
EXP_FULL_DATABASE, IMP_FULL_DATABASE这两个角色用于数据导入导出工具的使用。 自定义角色 Oracle建议我们自定义自己的角色,使我们更加灵活方便去管理用户 创建角色 SQL> create role admin; 授权给...
$Id: readme.txt,v 1.3 2008/12/21 04:37:59 hightman Exp $ [ 关于 PSCWS23 ] PSCWS23 是由 hightman 于 2006 年开发的纯 PHP 代码实现的简易中文分词系统第二和第三版的简称。 PSCWS 是英文 ...
$Id: readme.txt,v 1.3 2008/12/21 04:37:59 hightman Exp $ [ 关于 PSCWS23 ] PSCWS23 是由 hightman 于 2006 年开发的纯 PHP 代码实现的简易中文分词系统第二和第三版的简称。 PSCWS 是英文 ...