我發(fā)現(xiàn)我已經(jīng)很久沒有更新Blog了..這是我在升級數(shù)據(jù)庫時出現(xiàn)的問題.現(xiàn)在分享我的成果.
J2EE技術(shù)交流群:8883709
舉例:
A數(shù)據(jù)庫的A_User用戶指定的表空間是tablespace1,B數(shù)據(jù)庫的B_User用戶指定的空間指定為tablespace2;使用用戶A_User導(dǎo)出DMP文件導(dǎo)入到數(shù)據(jù)庫B的用戶B_User.用戶B擁有DBA權(quán)限,這樣會導(dǎo)致導(dǎo)入B_User用戶時,存儲的表空間為tablespace1,而不是tablespace2.
解決方法:
在B_User上執(zhí)行
revoke unlimited tablespace from B_User;
--數(shù)據(jù)庫B的B_User用戶在tablespace1的限額為0
alter user B_User quota 0 on tablespace1;
--自己的默認(rèn)表空間tablespace1的限額為無限
alter user B_User quota unlimited on tablespace2;
從數(shù)據(jù)庫A中導(dǎo)出的dmp文件里記錄了每個表的定義語句,這里邊包括表空間信息的,也就是說記錄了這個表的storage parameter,表空間是源數(shù)據(jù)庫的,即tablespace1。
這時候需要讓目標(biāo)數(shù)據(jù)庫,即數(shù)據(jù)庫B的B_User用戶在tablespace1的限額為0,而在其自己的默認(rèn)表空間tablespace2的限額為無限,這樣在導(dǎo)入時就會放在tablespace2表空間里了。