天天看點

Oracle 11g資料庫相關操作

1、Oracle11g預設對空表不配置設定segment,故使用exp導出Oracle11g資料庫時,空表不會導出,怎麼解決?

辦法一:

  設定deferred_segment_creation 參數為FALSE後,無論是空表還是非空表,都配置設定segment。

   在sqlplus中,執行如下指令:

   SQL>alter system set deferred_segment_creation=false;

   檢視:

   SQL>show parameter deferred_segment_creation;

    請注意:該值設定後隻對後面新增的表産生作用,對之前建立的空表不起作用。

辦法二:

    使用如下SQL語句,将所有的空表查詢出來,然後為其手動配置設定segment,

    select 'alter table '||table_name||' allocate extent;' from user_tables where decode(NUM_ROWS,null,0,NUM_ROWS)=0 ;

    對執行産生的SQL語句結果,再次執行一下即可。