標籤:
一、匯出方式:
使用exp/imp方式匯出資料分為四種方式:
1、表方式匯出:一個或多個指定的表,包括表的定義、表資料、表的所有者授權、表索引、資料表條件約束,以及建立在該表上的觸發器。也可以只匯出結構,不匯出資料。還可以匯出使用者所擁有的全部表,還可以指定匯出的表的分區。
2、使用者方式匯出:使用者模式的所有對象以及對象中的資料。
3、資料表空間方式匯出:包含在指定資料表空間中的所有對象,以及對象上的索引定義。
4、全部資料庫方式匯出:是指資料庫中的所有對象,包括資料表空間、使用者及模式中的所有對象(表、視圖、序列、同義字、約束、索引、預存程序和觸發器等)、資料和許可權。
二、用exp命令匯出資料。
文法:
exp userid=username/password direct=y full=y rows=y file=d:/backup/back.dmp log=d:/backup/back.log
說明:
userid=username/password:表示使用者名稱和密碼。
direct=y:是否按直接路徑匯出
full=y:表示全部資料庫匯出
rows=y:表示連同基表中的資料一同匯出
file:匯出檔案
log:匯出的記錄檔
參數可以是一個或者多個,如果在命令列沒有給出必須的參數,匯出使用程式會提示使用者逐個輸入。
由於exp參數過多,可以通過輸入 exp help=y 擷取exp的文法資訊。
通過輸入 EXP 命令和使用者名稱/口令,您可以後接使用者名稱/口令的命令:
常式: EXP SCOTT/TIGER
或者,您也可以通過輸入跟有各種參數的 EXP 命令來控制“匯出” 按照不同參數。要指定參數,您可以使用關鍵字:
格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
常式: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR) 或 TABLES=(T1: P1,T1: P2),如果 T1 是分區表
USERID 必須是命令列中的第一個參數。
關鍵字 說明(預設) 關鍵字 說明(預設)
--------------------------------------------------------------------------
USERID 使用者名稱/口令 FULL 匯出整個檔案 (N)
BUFFER 資料緩衝區大小 OWNER 所有者使用者名稱列表
FILE 輸出檔案 (EXPDAT.DMP) TABLES 表名稱列表
COMPRESS 匯入到一個區 (Y) RECORDLENGTH IO 記錄的長度
GRANTS 匯出許可權 (Y) INCTYPE 增量匯出類型
INDEXES 匯出索引 (Y) RECORD 跟蹤增量匯出 (Y)
DIRECT 直接路徑 (N) TRIGGERS 匯出觸發器 (Y)
LOG 螢幕輸出的記錄檔 STATISTICS 分析對象 (ESTIMATE)
ROWS 匯出資料行 (Y) PARFILE 參數檔案名稱
CONSISTENT 交叉表一致性 CONSTRAINTS 匯出約束條件 (Y)
FEEDBACK 每 x 行顯示進度 (0)
FILESIZE 每個轉儲檔案的最大大小
FLASHBACK_SCN 用於回調會話快照的 SCN
FLASHBACK_TIME 用來獲得最接近於指定時間的 SCN 的時間
QUERY 用來匯出表的子集的選擇子句
RESUMABLE 遇到與空格有關的錯誤時掛起 (N)
RESUMABLE_NAME 用來標識可恢複語句的文本字串
RESUMABLE_TIMEOUT RESUMABLE 的等待時間
TTS_FULL_CHECK 對 TTS 執行完全或部分相關性檢查
TABLESPACES 要匯出的資料表空間列表
TRANSPORT_TABLESPACE 匯出可傳輸的資料表空間中繼資料 (N)
TEMPLATE 調用 iAS 模式匯出的模板名稱
樣本:
1)將資料庫完全匯出
exp system\[email protected] file=‘d:\backup\full.dmp‘ full=y
2)匯出使用者
exp system/[email protected] file=‘d:\backup\scott.dmp‘ owner=(scott)
3)匯出表
exp scott/[email protected] file=‘d:\backup\table.dmp‘ tables=(emp,dept)
4)匯出資料表空間
exp scott/[email protected] file=‘d:\backup\table.dmp‘ tablespaces=(users)
如果想對dmp檔案進行壓縮,可以在上面命令後面 加上 compress=y 來實現。
三、使用imp命令匯入資料
可以通過在命令列輸入 imp help=y 擷取imp的文法資訊:
=============================================================================
C:/Documents and Settings/auduser>imp help=y
可以通過輸入 IMP 命令和您的使用者名稱/口令 後接使用者名稱/口令的命令:
常式: IMP SCOTT/TIGER
或者, 可以通過輸入 IMP 命令和各種參數來控制“匯入” 按照不同參數。要指定參數,您可以使用關鍵字:
格式: IMP KEYWORD=value 或 KEYWORD=(value1,value2,...,vlaueN)
常式: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N
或 TABLES=(T1: P1,T1: P2),如果 T1 是分區表
USERID 必須是命令列中的第一個參數。
關鍵字 說明(預設) 關鍵字 說明(預設)
--------------------------------------------------------------------------
USERID 使用者名稱/口令 FULL 匯入整個檔案 (N)
BUFFER 資料緩衝區大小 FROMUSER 所有人使用者名稱列表
FILE 輸入檔案 (EXPDAT.DMP) TOUSER 使用者名稱列表
SHOW 只列出檔案內容 (N) TABLES 表名列表
IGNORE 忽略建立錯誤 (N) RECORDLENGTH IO 記錄的長度
GRANTS 匯入許可權 (Y) INCTYPE 增量匯入類型
INDEXES 匯入索引 (Y) COMMIT 提交數組插入 (N)
ROWS 匯入資料行 (Y) PARFILE 參數檔案名稱
LOG 螢幕輸出的記錄檔 CONSTRAINTS 匯入限制 (Y)
DESTROY 覆蓋資料表空間資料檔案 (N)
INDEXFILE 將表/索引資訊寫入指定的檔案
SKIP_UNUSABLE_INDEXES 跳過不可用索引的維護 (N)
FEEDBACK 每 x 行顯示進度 (0)
TOID_NOVALIDATE 跳過指定類型 ID 的驗證
FILESIZE 每個轉儲檔案的最大大小
STATISTICS 始終匯入預計算的統計資訊
RESUMABLE 遇到與空格有關的錯誤時掛起 (N)
RESUMABLE_NAME 用來標識可恢複語句的文本字串
RESUMABLE_TIMEOUT RESUMABLE 的等待時間
COMPILE 編譯過程, 程式包和函數 (Y)
下列關鍵字僅用於可傳輸的資料表空間
TRANSPORT_TABLESPACE 匯入可傳輸的資料表空間中繼資料 (N)
TABLESPACES 將要傳輸到資料庫的資料表空間
DATAFILES 將要傳輸到資料庫的資料檔案
TTS_OWNERS 擁有可傳輸資料表空間集中資料的使用者
樣本:
1)匯入全部
imp scott/[email protected] file=full.dmp full=y
2)匯入表
imp scott/[email protected] file=table.dmp tables=(emp,dept)
3)匯入使用者
imp scott/[email protected] file=d:\backup\scott.dmp fromuser=scott touser=scott
Oracle基礎 exp/imp命令