問題:ORACLE 11g 將某用戶自帶表用 EXP 命令導出再IMP導入 10g 時 發現空表不能到導出
原因:11g 開始建表時,默認不分配 segment ,以節省空間,當表插入第一條數據時,再分配 segment
解決方法3個途徑:
1:向空白插入一條數據,再刪除掉,就分配空間了(空表比較少)。
2:修改系統參數alter system set deferred_segment_create=false;
3:批量對現有的空表分配空間
select 'alter table ' || table_name || ' allocate extent;' as sql from all_tables where num_rows = 0 and OWNER=username ;
執行導入導出工作
1. exp system/managerr@servicename owner=username1 file=expfile.dmp full=y
2. imp ystem/manager@servicename fromuser=username1 touser=username2 ignore=y file=expfile.dmp full=y