今天在做迁移数据库,从11.2.0.1迁移到11.2.0.4,用exp导出一个用户下所有的对象,在做imp导入的时候发现表少了很多,看日志后分析是部分空表没有导出。在网上查了一下,发现是11G中新特性,当表无数据时,不分配segment,以节省空间。而使用exp命令时,无Segment的表不会被导出。
解决方案的文章:
http://wenku.baidu.com/view/7beb56f57c1cfad6195fa702.html
最后我们采取了第三种:
用SQL拼接一个语句: select 'alter table ' ||table_name|| ' allocate extent;' from user_tables where num_rows=0;
:
alter table BUSEXTINFO allocate extent;
alter table BUSCHECKINFO allocate extent;
alter table HOMEMEMBER allocate extent;
alter table BUSASSEMBLYINFO allocate extent;
alter table BUSASSEMBLYHISTORY allocate extent;
alter table ASGNEMPDUTYPLUS allocate extent;
alter table JX_MAINTAINPEOPLELD allocate extent;
alter table MCBUSOILSTANDARDGS allocate extent;
alter table MCBUSOILSTDDETAILDGS allocate extent;
alter table FDISARRSEQUENCETIMELD allocate extent;
alter table FDISARRSEQUENCETMPLD allocate extent;
.......
最后执把这些语句执行一遍就OK了!
解决方案的文章:
http://wenku.baidu.com/view/7beb56f57c1cfad6195fa702.html
最后我们采取了第三种:
用SQL拼接一个语句: select 'alter table ' ||table_name|| ' allocate extent;' from user_tables where num_rows=0;
:
alter table BUSEXTINFO allocate extent;
alter table BUSCHECKINFO allocate extent;
alter table HOMEMEMBER allocate extent;
alter table BUSASSEMBLYINFO allocate extent;
alter table BUSASSEMBLYHISTORY allocate extent;
alter table ASGNEMPDUTYPLUS allocate extent;
alter table JX_MAINTAINPEOPLELD allocate extent;
alter table MCBUSOILSTANDARDGS allocate extent;
alter table MCBUSOILSTDDETAILDGS allocate extent;
alter table FDISARRSEQUENCETIMELD allocate extent;
alter table FDISARRSEQUENCETMPLD allocate extent;
.......
最后执把这些语句执行一遍就OK了!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25116248/viewspace-1408656/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25116248/viewspace-1408656/