最近,要在其他地方重新復制一套數據庫,數據庫是Oracle11G的,先用exp full=y導出備份文件后,在另外的數據庫上導入后,發現有一些表沒有導入,這些表都有一些共同的特征,全部都是空表,百度發現原因,是因為一個參數的原因:
show parameter deferred_segment_creation
當這個參數是true時,空表就不會分配segment空間,也不能被導出,將它改成false
alter system set deferred_segment_creation=false
就可以導出了。
不過,這只適用於修改參數之后創建的對象,對於之前創建的對象,只能通過其他方式來確保能導出:
1.編輯對象中的數據,比如新增一條數據再刪除。
2.執行alter table tablename allocate extent手動為表分配空間。