Oracle 11g用exp無法導出空表的處理發布方法 |
發布時間: 2012/9/16 15:41:21 |
Oracle 11G在用EXPORT導出時,空表不能導出。 11G中有個新特性,當表無數據時,不分配segment,以節省空間 解決方法: 1、insert一行,再rollback就產生segment了。 該方法是在在空表中插入數據,再刪除,則產生segment。導出時則可導出空表。 2、設置deferred_segment_creation 參數-
需注意的是:該值設置后對以前導入的空表不產生作用,仍不能導出,只能對后面新增的表產生作用。如需導出之前的空表,只能用第一種方法。 搞了我好久,最后查到這個方法。 用以下這句查找空表 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 把查詢結果導出,執行導出的語句 然后再執行 exp 用戶名/密碼@數據庫名 file=D:\dmp\exp_sms20110224.dmp log=D:\dmp\exp_smsrun.log 成功!
本文出自:億恩科技【www.laynepeng.cn】 |