原因:oralce_11g 中有个新特性,当表无数据时,不分配 segment,以节省空间,这也就导致了 exp 在导出表时,没有数据的表会被忽略
方法一:我们可以向表中插入数据,在删除,这样数据表就分配了 segment,就可以导出了 (该方法比较麻烦,不推荐)
方法二:我们可以停用 oracle_11g 中的特性,但是这需要数据库管理员权限,指令如下
sqlplus / as sysdba
show parameter deferred_segment_creation; -- 查看是否启用 true 为启动 alter system set deferred_segment_creation=false; -- 修改为不启用 show parameter deferred_segment_creation; -- 查看是否修改成功 false 未启用
结论:采用方法二时,只有关闭新特性后创建的表才会起作用,关闭前创建的表就只能采用方法一的模式,或者我们可以删除后重新创建新表