Oracle工具使用(export,import,sqlldr中文幫助及例項)(轉)

ba發表於2007-08-16
Oracle工具使用(export,import,sqlldr中文幫助及例項)(轉)[@more@]1.1 EXPORT

1.1.1 幫助

exp是Oracle的一個可執行程式,存放目錄$ORACLE_HOME/bin

exp匯出工具將資料庫中資料備份壓縮成一個二進位制系統檔案.可以在不同OS間遷移

它有三種模式:

使用者模式:匯出使用者所有物件以及物件中的資料;

表模式:匯出使用者所有表或者指定的表;

整個資料庫:匯出資料庫中所有物件。



exp help=y



透過輸入 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)

ROWS 匯出資料行 (Y)

PARFILE 引數檔名

CONSTRAINTS 匯出限制 (Y)

CONSISTENT 交叉表一致性

LOG 螢幕輸出的日誌檔案

STATISTICS 分析物件 (ESTIMATE)

DIRECT 直接路徑 (N)

TRIGGERS 匯出觸發器 (Y)

FEEDBACK 顯示每 x 行 (0) 的進度

FILESIZE 各轉儲檔案的最大尺寸

QUERY 選定匯出表子集的子句



下列關鍵字僅用於可傳輸的表空間

TRANSPORT_TABLESPACE 匯出可傳輸的表空間後設資料 (N)

TABLESPACES 將傳輸的表空間列表

1.1.2 例項

exp parfile=exp.par



--exp.par 內容:

userid=aicbs/shyz2002@bakflcp

buffer=40960000

file=expdat.dmp

log=exp.log

grants=n

indexes=y

rows=n

compress=n

direct=y

tables=

(

ID_MAP,

CUSTOMER

)

1.2 IMPORT

1.2.1 幫助

imp是Oracle下的一個可執行的檔案 存放目錄/ORACLE_HOME/bin

imp匯入工具將EXP形成的二進位制系統檔案匯入到資料庫中.

它有三種模式:

使用者模式:匯出使用者所有物件以及物件中的資料;

表模式:匯出使用者所有表或者指定的表;

整個資料庫:匯出資料庫中所有物件。

只有擁有IMP_FULL_DATABASE和DBA許可權的使用者才能做整個資料庫匯入



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)

ANALYZE 執行轉儲檔案中的 ANALYZE 語句 (Y)

FEEDBACK 顯示每 x 行 (0) 的進度

TOID_NOVALIDATE 跳過指定型別 id 的校驗

FILESIZE 各轉儲檔案的最大尺寸

RECALCULATE_STATISTICS 重新計算統計值 (N)



下列關鍵字僅用於可傳輸的表空間

TRANSPORT_TABLESPACE 匯入可傳輸的表空間後設資料 (N)

TABLESPACES 將要傳輸到資料庫的表空間

DATAFILES 將要傳輸到資料庫的資料檔案

TTS_OWNERS 擁有可傳輸表空間集中資料的使用者

1.2.2 例項

imp parfile=imp.par



--imp.par檔案內容:

userid=aicbs/shyz2005@testdb2

buffer=40960000

file=expdat.dmp

log=imp.log

ignore=n

grants=n

rows=n

fromuser=aicbs

touser=aicbs

full=y



1.2.3 IMPORT可能出現的問題

(1) 資料庫物件已經存在

一般情況, 匯入資料前應該徹底刪除目標資料下的表, 序列, 函式/過程,觸發器等;資料庫物件已經存在, 按預設的imp引數, 則會匯入失敗,如果用了引數ignore=y, 會把exp檔案內的資料內容匯入,如果表有唯一關鍵字的約束條件, 不合條件將不被匯入,如果表沒有唯一關鍵字的約束條件, 將引起記錄重複

(2) 資料庫物件有主外來鍵約束

不符合主外來鍵約束時, 資料會匯入失敗

解決辦法: 先匯入主表, 再匯入依存表

disable目標匯入物件的主外來鍵約束, 匯入資料後, 再enable它們

(3) 許可權不夠

如果要把A使用者的資料匯入B使用者下, A使用者需要有imp_full_database許可權

(4) 匯入大表(大於80M )時,儲存分配失敗,預設的EXP時,compress=Y,也就是把所有的資料壓縮在一個資料塊上.匯入時,如果不存在連續一個大資料塊,則會匯入失敗.匯出80M以上的大表時, 記得compress= N, 則不會引起這種錯誤.

(5) imp和exp使用的字符集不同

如果字符集不同,匯入會失敗,可以改變unix環境變數或者NT登錄檔裡NLS_LANG相關資訊.匯入完成後再改回來.

(6) imp和exp版本不能往上相容

imp可以成功匯入低版本exp生成的檔案, 不能匯入高版本exp生成的檔案,根據情況我們可以用

用9i的exp不能匯出8i的資料庫物件!

$imp username/password@connect_string

說明: connect_string 是在/ORACLE_HOME/network/admin/tnsnames.ora定義的本地或者遠端資料庫的名稱.



1.3 SQLLDR

1.3.1例項

sqlldr userid=aicbs/shyz2005@testdb2 control=sqlldr.ctl direct=true



--sqlldr.ctl檔案內容:

load data infile 'exp_in.txt'

truncate into table user_alarm_intf

FIELDS TERMINATED BY ','

OPTIONALLY ENCLOSED BY '"'

trailing nullcols

(alarm_type,

alarm_date date 'yyyy-mm-dd',

acc_id,

sub_id,

bill_id,

alarm_desc

)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-961703/,如需轉載,請註明出處,否則將追究法律責任。

相關文章