需求:將一個用戶的數據導入另外一個用戶的默認表空間下oracle
一、導出某個用戶A數據時,也導出了相應的表空間設置spa
二、導入時須要導入B用戶的默認表空間下alter user B default tablespace ***;日誌
三、若是導入時不存在原數據同名的表空間(下文稱原表空間),直接導入便可it
四、若是存在,則要收回revoke unlimited tablespace from USERNAME;(由於導入用戶須要DBA權限,而DBA隱含unlimited tablespace 權限)io
五、取消B用戶在原表空間的配額,可能有多個表空間,須要所有收回table
即執行多個 alter user USERNAME quota 0 on TABLESPACENAME; 權限
六、爲用戶在默認表空間中添加配額alter user USERNAME quota unlimited on TABLESPACENAMEim
七、執行導入,記錄好日誌數據
八、alter system set deferred_segment_creation=true;這個保障了建表的時候不會當即分配表空間,tab
等導入數據時,oracle發現表空間無配額,則會自動導入到有配額的空間