oracle 11g导出少了空表,原因分析
oracle 11g导出少了空表使用exp命令的时候,会出现少表的情况,是因为在11g版本中如果一个表里面是空的,为了节省空间,默认是不会给这个表分配空间的,在导出的时候也就不会将空表导出的,自然导入到另一个库里的时候会出现少表的情况。但缺少的表虽然里面没有数据,但有时候还是会影响到应用程序的执行,所以得把所有表都得导出来。 所以在正常导出表时,请一定要注意。 原因分析: 什么是段: deferred_segment_creation: sql语句:
SQL> show parameter deferred_segment_creation;
SQL> alter system set deferred_segment_creation=false;
SQL> Select segment_created,table_name from user_tables where segment_created = ‘NO‘; 解决办法:
SQL> select ‘alter table ‘||table_name||‘ allocate extent;‘ from user_tables where num_rows=0; 执行过后,就可以使用命令导出用户下的所有表了。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |