sqlldr總結參數介紹

[size=large]有效的關鍵字:
userid -- ORACLE username/password
control - 控制文件
log - 記錄的日誌文件
* 表示數據文件在控制文件之後,如果是獨立的數據文件,則把文件代替*
bad - 壞數據文件,記錄錯誤的未加載數據
data - 數據文件,* data參數只能指定一個數據文件,如果控制文件也通過infile指定了數據文件,並且指定多個,
則sqlldr在執行時,先加載data參數指定的數據文件,控制文件中第一個infile指定的數據文件被忽略,
但後續的infile指定的數據文件繼續有效
discard - 丟棄的數據文件,默認情況不產生,必須指定
discardmax - 允許丟棄數據的最大值 (全部默認)
skip -- 跳過記錄數,從數據文件中,從第一行開始要計算要跳過的行數,*,對於多表加載的情況,如果有when條件
判斷的話,或者直接路徑下的多表加載,如果要加載的記錄數不同,則該參數無效.
load -- 給你一萬行的數據,卻只要求你導入10行
errors - 允許的錯誤記錄數,超過則終止任務 (默認50)
rows -- 常規路徑導入時:指綁定數組中的行數;直接路徑導入時,指一次從數據文件只讀取的行數,該參數同時受bindsize制約,如果rows*每行實際佔用大小超出bindsize最大可用值,則rows自動降低達到bindsize最大可用值(每次提交的記錄數,默認: 常規路徑 64, 所有直接路徑)
bindsize -- 爲綁定數組指定的最大可用空間,用來存貯一次讀取的rows的記錄,該值不能太小,至少要放入一條邏輯記錄 但設置太大也沒什麼作用。 每次提交記錄的緩衝區的大小(字節爲單位,默認256000)
bind array size=(number of rows)*(sun(fixed field lengths)+sum(maximum varying field lengths)+((number of varying
length fields)*(size of length indicator)))
silent -- 禁止輸出信息 (header,feedback,errors,discards,partitions)
sqlldr scott/scott control=ldr_case9.ctl silent=header 這樣就可以不輸出頭部信息了.
direct - 使用直通路徑方式導入,不走buffer cache,通過direct path api發送數據到服務器端的加載引擎,加載引擎按照數據塊的格式處理數據並直接寫向數據文件,因此效率較高(默認FALSE)
parfile -- 高密度的sqlldr導入,省得寫參數,就建個腳本吧
parallel -- 並行導入 僅在直接路徑加載時有效(默認FALSE)
file -- 並行加載時會用到該參數,指定file參數,要加載的內容即只向指定的數據文件寫入數據,減少i/o
skip_unusable_indexes--默認爲false,如果是true,則加載完數據時,就算此表索引不可用,數據加載完不會改變此索引狀態,oracle 數據庫中也有此同名參數,但順序是先看sqlldr,再數據庫
skip_index_maintenance-- 是否跳過索引維護,默認false,直接路徑加載有效,如果設置爲true,因加載完數據不維護索引,因此索引會失效.
readsize---- 緩衝區大小,默認值:1048576單位字節,最大不超過20m,該參數僅當從數據文件讀取時有效,如果是從近制文件讀取數 據,則默認爲64k
external_table: not_used:不使用外部表,通過常規路徑或直接路徑加載數據
generate_only:sqlldr並不執行加載,而是生成創建外部表的sql和處理數據的sql,並保存在log文件中,用戶可
以修改後拿到sqlplus中執行
execute:執行外部表並加載數據
columnarrayrows: 指定直接路徑加載時流緩衝區的行數
-- Number of rows for direct path column array(默認5000)
streamsize : -- Size of direct path stream buffer in bytes(默認256000)
指定直接路徑加載時流緩衝區的大小
multithreading 是否啓用多線程,多cpu爲true,單cpu false,直接路徑加載時有效
-- use multithreading in direct path
resumable -- 會話等待空閒空間分配,在執行sqlldr時,如果餘下空間不足,false參數則直接報錯退出,如果設置爲true,
則等待,讓dba手動處理,達到resumable_timeout參數中指定的超時時間,再退出
enable or disable resumable for current session(默認FALSE)
resumable_name 會話標示名,通過查詢user_resumable或dba_resumable二個字典來獲取信息,
-- text string to help identify resumable statement
resumable_timeout: 會話超時,在多少時間未能執行sqlldr則退出,設置true有效
-- wait time (in seconds) for RESUMABLE(默認7200)
date_cache -- 日期轉換用緩存在,用於提高轉換效率.僅在直接路徑加載時有用
size (in entries) of date conversion cache(默認1000)[/size]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章