ORACLE EXPDP命令使用詳細
ORACLE EXPDP命令使用詳細
相關引數以及匯出示例:
1. DIRECTORY
指定轉儲檔案和日誌檔案所在的目錄
DIRECTORY=directory_object
Directory_object用於指定目錄物件名稱.需要注意,目錄物件是使用CREATE DIRECTORY語句建立的物件,而不是OS目錄
Expdp scott/tiger DIRECTORY= DMP DUMPFILE=a.dump
create or replace directory dmp
as 'd:/dmp'
expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=metadata_only
2. CONTENT
該選項用於指定要匯出的內容.預設值為ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
當設定CONTENT為ALL時,將匯出物件定義及其所有資料.為DATA_ONLY時,只匯出物件資料,為METADATA_ONLY時,只匯出物件定義
expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=metadata_only
----------只匯出物件定義
expdp zftang/zftang@zftang directory=dmp dumpfile=test.dmp content=data_only
----------匯出出所有資料
3. DUMPFILE
用於指定轉儲檔案的名稱,預設名稱為expdat.dmp
DUMPFILE=[directory_object:]file_name [,….]
Directory_object用於指定目錄物件名,file_name用於指定轉儲檔名.需要注意,如果不指定directory_object,匯出工具會自動使用DIRECTORY選項指定的目錄物件
expdp zftang/zftang@zftang directory=dmp dumpfile=test1.dmp
資料泵工具匯出的步驟:
1、建立DIRECTORY
create directory dir_dp as 'D:/oracle/dir_dp';
2、授權
Grant read,write on directory dir_dp to zftang;
--檢視目錄及許可權
SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d
WHERE t.table_name(+) = d.directory_name ORDER BY 2, 1;
3、執行匯出
expdp zftang/zftang@fgisdb schemas=zftang directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log;
連線到: Oracle Database 10g Enterprise Edition Release 10.2.0.1
With the Partitioning, OLAP and Data Mining options
啟動 "ZFTANG"."SYS_EXPORT_SCHEMA_01": zftang/********@fgisdb sch
ory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log; */
備註:
1、directory=dir_dp必須放在前面,如果將其放置最後,會提示 ORA-39002: 操作無效
ORA-39070: 無法開啟日誌檔案。
ORA-39087: 目錄名 DATA_PUMP_DIR; 無效
2、在匯出過程中,DATA DUMP 建立並使用了一個名為SYS_EXPORT_SCHEMA_01的物件,此物件就是DATA DUMP匯出過程中所用的JOB名字,如果在執行這個命令時如果沒有指定匯出的JOB名字那麼就會產生一個預設的JOB名字,如果在匯出過程中指定JOB名字就為以指定名字出現
如下改成:
expdp zftang/zftang@fgisdb schemas=zftang directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log,job_name=my_job1;
3、匯出語句後面不要有分號,否則如上的匯出語句中的job表名為‘my_job1;’,而不是my_job1。因此導致expdp zftang/zftang attach=zftang.my_job1執行該命令時一直提示找不到job表
資料泵匯出的各種模式:
1、 按表模式匯出:
expdp zftang/zftang@fgisdb tables=zftang.b$i_exch_info,zftang.b$i_manhole_info dumpfile =expdp_test2.dmp logfile=expdp_test2.log directory=dir_dp job_name=my_job
2、按查詢條件匯出:
expdp zftang/zftang@fgisdb tables=zftang.b$i_exch_info dumpfile =expdp_test3.dmp logfile=expdp_test3.log directory=dir_dp job_name=my_job query='"where rownum<11"'
3、按表空間匯出:
Expdp zftang/zftang@fgisdb dumpfile=expdp_tablespace.dmp tablespaces=GCOMM.DBF logfile=expdp_tablespace.log directory=dir_dp job_name=my_job
4、匯出方案
Expdp zftang/zftang DIRECTORY=dir_dp DUMPFILE=schema.dmp SCHEMAS=zftang,gwm
5、匯出整個資料庫:
expdp zftang/zftang@fgisdb dumpfile =full.dmp full=y logfile=full.log directory=dir_dp job_name=my_job
impdp匯入模式:
1、按表匯入
p_street_area.dmp檔案中的表,此檔案是以gwm使用者按schemas=gwm匯出的:
impdp gwm/gwm@fgisdb dumpfile =p_street_area.dmp logfile=imp_p_street_area.log directory=dir_dp tables=p_street_area job_name=my_job
2、按使用者匯入(可以將使用者資訊直接匯入,即如果使用者資訊不存在的情況下也可以直接匯入)
impdp gwm/gwm@fgisdb schemas=gwm dumpfile =expdp_test.dmp logfile=expdp_test.log directory=dir_dp job_name=my_job
3、不透過expdp的步驟生成dmp檔案而直接匯入的方法:
--從源資料庫中向目標資料庫匯入表p_street_area
impdp gwm/gwm directory=dir_dp NETWORK_LINK=igisdb tables=p_street_area logfile=p_street_area.log job_name=my_job
igisdb是目的資料庫與源資料的連結名,dir_dp是目的資料庫上的目錄
4、更換表空間
採用remap_tablespace引數
--匯出gwm使用者下的所有資料
expdp system/orcl directory=data_pump_dir dumpfile=gwm.dmp SCHEMAS=gwm
注:如果是用sys使用者匯出的使用者資料,包括使用者建立、授權部分,用自身使用者匯出則不含這些內容
--以下是將gwm使用者下的資料全部匯入到表空間gcomm(原來為gmapdata表空間下)下
impdp system/orcl directory=data_pump_dir dumpfile=gwm.dmp remap_tablespace=gmapdata:gcomm
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27042095/viewspace-751689/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE expdp/impdp詳解Oracle
- Docker exec 命令的詳細使用Docker
- oracle EXPDP/IMPDP 常用命令Oracle
- expdp impdp 使用命令解析
- Oracle RAC中Srvctl命令詳細說明(轉)Oracle
- Oracle expdp/impdp 使用示例Oracle
- linux chmod命令詳細使用引數Linux
- oracle資料泵備份(Expdp命令)Oracle
- 【SHRINK】Oracle收縮表的詳細命令參考Oracle
- oracle 的DML命令的詳細處理過程Oracle
- (轉)ORACLE RAC 中 SRVCTL 命令詳細說明文件Oracle
- Linux Grep命令使用的詳細介紹Linux
- Git 操作命令詳細Git
- chmod命令詳細用法
- RAC詳細命令(轉)
- oracle expdp和impdp使用例子Oracle
- Oracle10g 資料泵匯出命令 expdp 使用總結Oracle
- Linux下ulimit命令的詳細使用介紹LinuxMIT
- 詳細介紹Linux finger命令的使用Linux
- linux系統vi命令詳細使用說明Linux
- MQ詳細命令介紹MQ
- docker 命令詳細解釋Docker
- Recovery命令詳細介紹
- top命令詳細解釋
- Vmstat 命令詳細介紹
- Oracle expdpOracle
- expdp impdp 資料庫匯入匯出命令詳解資料庫
- oracle實驗記錄 (expdp/impdp使用)Oracle
- JPS 命令詳細解釋
- Linux grep命令詳細教程Linux
- tar命令的詳細解釋
- rman超詳細命令介紹
- redis info命令詳細說明Redis
- Expdp Impdp詳解
- oracle rac監控oswatch詳細使用教學Oracle
- Oracle Stream配置詳細步驟(使用者模式)Oracle模式
- oracle expdp and impdpOracle
- oracle 事件診斷詳細Oracle事件