最近在导出一个用户下400多张表。但是很多是空表,导致导出来后只有200多张表,还有200左右的表没有导出来。
原因:11g默认创建一个表时不分配segment,只有在插入数据时才会产生(当然也可以强制分配),以节省磁盘空间。
对于已经存在的空表解决办法:
就是想办法让空表有segment,第一种:可以通过插入数据的方式(不想要这些数据可以回滚),只要有insert动作就会分配segment;
第二种:就是强制分配:alter table tablename allocate extent;
实验:强制分配segment再导出 成功
alter table TEST1 allocate extent;