時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
imp導入數(shù)據(jù)指定表空間,大致有以下幾種方法可以:
1. 有一個簡單的方法,適用于數(shù)據(jù)比較少的情況:直接使用UltraEdit打方DMP文件,默認是16進制,切換成文本模式,將里面的:TABLESPACE "TS1"全部替換成TABLESPACE "TS2",然后再導入,不用加什么tablespaces=TS2之類的參數(shù)即可,當然加了也無所所謂。
C:\>IMP USER2/USER2 log=C:\plsimp.log file=D:\database\USER1.dmp fromuser=USER1 touser=USER2 ignore=yes tablespaces=TS2
不過有個缺點,如果DMP文件有幾百M甚至幾G,嘿嘿嘿嘿,不知道UltraEdit有啥反應?
2. 還有另外一種比較好的方法?;舅悸范际窍葟?USER1導出表結構(DMP或者SQL腳本),然后在USER2用戶下創(chuàng)建空的數(shù)據(jù)庫表(如果是DMP,則參見方法1;如果是SQL腳本,則稍作修改后以USER2用戶執(zhí)行即可),再將包括數(shù)據(jù)的DMP導入,注意要設IGNORE=Y,并指定FROMUSER和TOUSER。具體實現(xiàn)方法為:
?。?)先用工具導出USER1的表結構(不要導出CHECK和FK,特別是FK?。?,TOAD和 PL/SQL都有此功能。PL/SQL Developer導出表結構:Tools-->Export User Objects(導出用戶對象) -->選擇要導出的表(包括Sequence等)-->.sql文件,導出的都為sql文件?;蛘呤褂胕mp的indexfile選項生成表結構的SQL腳本。
?。?)在USER2用戶下創(chuàng)建相同的表結構
?。?)導入完整的數(shù)據(jù)
PS:
PL/SQL Developer工具操作步驟:
?。?)導出表結構:
Tools-->Export User Objects(導出用戶對象) -->選擇要導出的表(包括Sequence等)-->.sql文件,導出的都為sql文件
?。ㄟ@一步也可以導出一個只包括表結構的DMP文件。)
?。?)導出表數(shù)據(jù):
Tools-->Export Tables-->選擇表,選擇SQL Inserts-->.sql文件
?。ㄟ@一步也可以導出一個包括表結構和數(shù)據(jù)或者只有數(shù)據(jù)沒有表結構圖的DMP文件。)
?。?)導入表結構:
執(zhí)行剛剛導出的sql文件,記住要刪掉table前的用戶名,比如以前這表名為sys.tablename,必須刪除sys
?。ㄈ绻侵话ū斫Y構的DMP文件,則使用UltraEdit修改表空間,再導入。如方法1)
?。?)導入表數(shù)據(jù):
執(zhí)行剛剛導出的sql文件
?。ㄈ绻荄MP文件,則直接導入即可,注意要設IGNORE=Y,并指定FROMUSER和TOUSER。)
IMP命令操作步驟:
首先:exp user/pw file=file.dmp owner=yourUser1
然后:imp user/pw file=file.dmp indexfile=xxxx.sql fromuser=yourUser1 touser=yourUser2
隨后:修改xxxx.sql中的關于有表空間設置的地方為新的表空間,并去掉相關的注釋(rem),然后執(zhí)行xxxx.sql創(chuàng)建相關對象。
最后:imp user/pw file=file.dmp fromuser=yourUser1 touser=yourUser2 ignore=y
關鍵詞標簽:Oracle
相關閱讀
熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實例的控制文件 為UNIX服務器設置Oracle全文檢索
人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法