基於oracle expdp命令的使用詳解

2022-09-24 17:57:10 字數 4187 閱讀 7367

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=

當設定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: 操作無效

&nbs程式設計客棧p;                     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;www.cppcns.com',而不是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_areibsqpa.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

本文標題: 基於oracle expdp命令的使用詳解

本文位址:

ORACLE EXPDP命令使用詳細

exp imp expdp impdp oracle資料匯入匯出imp exp就相當於oracle資料還原與備份。exp命令可以把資料從遠端資料庫伺服器匯出到本地的dmp檔案 imp命令可以把dmp檔案從本地匯入到遠處的資料庫伺服器中。利用這個功能可以構建兩個相同的資料庫,乙個用來測試,乙個用來正式...

Oracle expdp 資料幫浦匯出

以前都是用imp和exp用來匯入匯出oracle資料庫,最近接觸到 資料幫浦,所以自己把資料幫浦的使用方法寫一下,作為自己的備忘錄把,免得以後忘記了 首先開啟 sqlplus 如圖操作 create or replace directory dir dump as e dbdump grant re...

oracle expdp和impdp使用例子

情景 由於生產需求,需要把rmtel使用者的資料完全複製乙份給rmtel xzy,但排除rmtel使用者 cab jjxport tab t servicexx tb crossconnection tb link tb card tb physicalcontainer tb port 這些表。也...