Oracle工具使用(export,import,sqlldr中文幫助及例項)(轉)
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
)
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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle OCP(56):SQLLDR-樣例OracleSQL
- Oracle sqlldr工具功能測試OracleSQL
- export/importExportImport
- import、require 、export、export default、exports、module exportsImportUIExport
- import,export的支援[nodejs]ImportExportNodeJS
- tunna工具使用例項
- Import Error: cannot import name ‘export_saved_modelImportErrorExport
- Vim官方的中文幫助!!
- Export/import Datas To/from a Csv FileExportImport
- Linux設定中文幫助文件、常見目錄、幫助命令Linux
- 新手關於import/export的理解ImportExport
- Oracle minus用法詳解及應用例項Oracle
- module.exports、exports 、export default之間的差異區別及與require、import的使用ExportUIImport
- ES6 module模組 import exportImportExport
- Oracle OCP(55):SQLLDR—CTL檔案OracleSQL
- Oracle Far Sync例項Oracle
- 4.1. Oracle例項Oracle
- ActiveMQ的使用及整合spring的使用例項MQSpring
- sqlplus和sqlldr工具安裝SQL
- man 命令顯示簡體中文幫助
- 【PSU】Oracle打PSU及解除安裝PSU(單例項)Oracle單例
- JS/TS 的 import 和 export 用法小結JSImportExport
- node識別es6的 import/exportImportExport
- oracle資料庫與oracle例項Oracle資料庫
- guava之ImmutableMap使用例項及好處Guava
- JSTL的標籤及使用,包含例項JS
- 平時多做這“4項運動”,可以幫助慢性胃炎慢慢好轉!
- Oracle select 語句字串拼接小例項-quote使用Oracle字串
- oracle 例項表查詢Oracle
- 詳解es6的export和import命令ExportImport
- Redis 例項分析工具Redis
- NIO原理及例項
- [20191202]關於oracle例項是否使用hugepages問題.txtOracle
- 如何使用macOS幫助選單Mac
- JavaWeb名詞解釋及幫助文件JavaWeb
- Mac/Linux 安裝中文版 man 幫助命令MacLinux
- ES6規範import和export用法總結ImportExport
- 如何讓瀏覽器支援 import 和export語法瀏覽器ImportExport
- Python手繪視覺化工具cutecharts使用例項Python視覺化Echarts