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