日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Oracle工具使用(export,import,sqlldr中文帮助及实例))

發(fā)布時間:2023/12/9 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle工具使用(export,import,sqlldr中文帮助及实例)) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.1 EXPORT

1.1.1 幫助

exp是Oracle的一個可執(zhí)行程序,存放目錄$ORACLE_HOME/bin

exp導(dǎo)出工具將數(shù)據(jù)庫中數(shù)據(jù)備份壓縮成一個二進制系統(tǒng)文件.可以在不同OS間遷移

它有三種模式:

用戶模式:導(dǎo)出用戶所有對象以及對象中的數(shù)據(jù);

表模式:導(dǎo)出用戶所有表或者指定的表;

整個數(shù)據(jù)庫:導(dǎo)出數(shù)據(jù)庫中所有對象。



exp help=y



通過輸入 EXP 命令和用戶名/口令,您可以

在用戶 / 口令之后的命令:



實例: EXP SCOTT/TIGER



或者,您也可以通過輸入跟有各種參數(shù)的 EXP 命令來控制“導(dǎo)出”的運行方式。

要指定參數(shù),您可以使用關(guān)鍵字:



格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

實例: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)

或 TABLES=(T1: P1,T1: P2),如果 T1 是分區(qū)表



USERID 必須是命令行中的第一個參數(shù)。



關(guān)鍵字 說明(默認)

---------------------------------------------------

USERID 用戶名/口令

FULL 導(dǎo)出整個文件 (N)

BUFFER 數(shù)據(jù)緩沖區(qū)的大小

OWNER 所有者用戶名列表

FILE 輸出文件 (EXPDAT.DMP)

TABLES 表名列表

COMPRESS 導(dǎo)入一個范圍 (Y)

RECORDLENGTH IO 記錄的長度

GRANTS 導(dǎo)出權(quán)限 (Y)

INCTYPE 增量導(dǎo)出類型

INDEXES 導(dǎo)出索引 (Y)

RECORD 跟蹤增量導(dǎo)出 (Y)

ROWS 導(dǎo)出數(shù)據(jù)行 (Y)

PARFILE 參數(shù)文件名

CONSTRAINTS 導(dǎo)出限制 (Y)

CONSISTENT 交叉表一致性

LOG 屏幕輸出的日志文件

STATISTICS 分析對象 (ESTIMATE)

DIRECT 直接路徑 (N)

TRIGGERS 導(dǎo)出觸發(fā)器 (Y)

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

FILESIZE 各轉(zhuǎn)儲文件的最大尺寸

QUERY 選定導(dǎo)出表子集的子句



下列關(guān)鍵字僅用于可傳輸?shù)谋砜臻g

TRANSPORT_TABLESPACE 導(dǎo)出可傳輸?shù)谋砜臻g元數(shù)據(jù) (N)

TABLESPACES 將傳輸?shù)谋砜臻g列表

1.1.2 實例

exp parfile=exp.par



--exp.par 內(nèi)容:

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下的一個可執(zhí)行的文件 存放目錄/ORACLE_HOME/bin

imp導(dǎo)入工具將EXP形成的二進制系統(tǒng)文件導(dǎo)入到數(shù)據(jù)庫中.

它有三種模式:

用戶模式:導(dǎo)出用戶所有對象以及對象中的數(shù)據(jù);

表模式:導(dǎo)出用戶所有表或者指定的表;

整個數(shù)據(jù)庫:導(dǎo)出數(shù)據(jù)庫中所有對象。

只有擁有IMP_FULL_DATABASE和DBA權(quán)限的用戶才能做整個數(shù)據(jù)庫導(dǎo)入



imp help=y



可以通過輸入 IMP 命令和您的用戶名/口令

跟有您的用戶名 / 口令的命令:



實例: IMP SCOTT/TIGER



或者, 可以通過輸入 IMP 命令和各種自變量來控制“導(dǎo)入”按照不同參數(shù)。

要指定參數(shù),您可以使用關(guān)鍵字:



格式: IMP KEYWORD=value 或 KEYWORD=(value1,value2,...,vlaueN)

實例: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N

或 TABLES=(T1: P1,T1: P2),如果 T1 是分區(qū)表



USERID 必須是命令行中的第一個參數(shù)。



關(guān)鍵字 說明(默認)

----------------------------------------------

USERID 用戶名/口令

FULL 導(dǎo)入整個文件 (N)

BUFFER 數(shù)據(jù)緩沖區(qū)大小

FROMUSER 所有人用戶名列表

FILE 輸入文件 (EXPDAT.DMP)

TOUSER 用戶名列表

SHOW 只列出文件內(nèi)容 (N)

TABLES 表名列表

IGNORE 忽略創(chuàng)建錯誤 (N)

RECORDLENGTH IO 記錄的長度

GRANTS 導(dǎo)入權(quán)限 (Y)

INCTYPE 增量導(dǎo)入類型

INDEXES 導(dǎo)入索引 (Y)

COMMIT 提交數(shù)組插入 (N)

ROWS 導(dǎo)入數(shù)據(jù)行 (Y)

PARFILE 參數(shù)文件名

LOG 屏幕輸出的日志文件

CONSTRAINTS 導(dǎo)入限制 (Y)

DESTROY 覆蓋表空間數(shù)據(jù)文件 (N)

INDEXFILE 將表/索引信息寫入指定的文件

SKIP_UNUSABLE_INDEXES 跳過不可用索引的維護 (N)

ANALYZE 執(zhí)行轉(zhuǎn)儲文件中的 ANALYZE 語句 (Y)

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

TOID_NOVALIDATE 跳過指定類型 id 的校驗

FILESIZE 各轉(zhuǎn)儲文件的最大尺寸

RECALCULATE_STATISTICS 重新計算統(tǒng)計值 (N)



下列關(guān)鍵字僅用于可傳輸?shù)谋砜臻g

TRANSPORT_TABLESPACE 導(dǎo)入可傳輸?shù)谋砜臻g元數(shù)據(jù) (N)

TABLESPACES 將要傳輸?shù)綌?shù)據(jù)庫的表空間

DATAFILES 將要傳輸?shù)綌?shù)據(jù)庫的數(shù)據(jù)文件

TTS_OWNERS 擁有可傳輸表空間集中數(shù)據(jù)的用戶

1.2.2 實例

imp parfile=imp.par



--imp.par文件內(nèi)容:

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可能出現(xiàn)的問題

(1) 數(shù)據(jù)庫對象已經(jīng)存在

一般情況, 導(dǎo)入數(shù)據(jù)前應(yīng)該徹底刪除目標數(shù)據(jù)下的表, 序列, 函數(shù)/過程,觸發(fā)器等;數(shù)據(jù)庫對象已經(jīng)存在, 按缺省的imp參數(shù), 則會導(dǎo)入失敗,如果用了參數(shù)ignore=y, 會把exp文件內(nèi)的數(shù)據(jù)內(nèi)容導(dǎo)入,如果表有唯一關(guān)鍵字的約束條件, 不合條件將不被導(dǎo)入,如果表沒有唯一關(guān)鍵字的約束條件, 將引起記錄重復(fù)

(2) 數(shù)據(jù)庫對象有主外鍵約束

不符合主外鍵約束時, 數(shù)據(jù)會導(dǎo)入失敗

解決辦法: 先導(dǎo)入主表, 再導(dǎo)入依存表

disable目標導(dǎo)入對象的主外鍵約束, 導(dǎo)入數(shù)據(jù)后, 再enable它們

(3) 權(quán)限不夠

如果要把A用戶的數(shù)據(jù)導(dǎo)入B用戶下, A用戶需要有imp_full_database權(quán)限

(4) 導(dǎo)入大表(大于80M )時,存儲分配失敗,默認的EXP時,compress=Y,也就是把所有的數(shù)據(jù)壓縮在一個數(shù)據(jù)塊上.導(dǎo)入時,如果不存在連續(xù)一個大數(shù)據(jù)塊,則會導(dǎo)入失敗.導(dǎo)出80M以上的大表時, 記得compress= N, 則不會引起這種錯誤.

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

如果字符集不同,導(dǎo)入會失敗,可以改變unix環(huán)境變量或者NT注冊表里NLS_LANG相關(guān)信息.導(dǎo)入完成后再改回來.

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

imp可以成功導(dǎo)入低版本exp生成的文件, 不能導(dǎo)入高版本exp生成的文件,根據(jù)情況我們可以用

用9i的exp不能導(dǎo)出8i的數(shù)據(jù)庫對象!

$imp username/password@connect_string

說明: connect_string 是在/ORACLE_HOME/network/admin/tnsnames.ora定義的本地或者遠端數(shù)據(jù)庫的名稱.



1.3 SQLLDR

1.3.1實例

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



--sqlldr.ctl文件內(nèi)容:

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

)

總結(jié)

以上是生活随笔為你收集整理的Oracle工具使用(export,import,sqlldr中文帮助及实例))的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。