当前位置:文档之家› expdp和impdp使用说明

expdp和impdp使用说明

expdp和impdp使用说明
expdp和impdp使用说明

EXPDP和IMPDP使用说明

Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中.

数据泵导出导入(EXPDP和IMPDP)的作用

1,实现逻辑备份和逻辑恢复.

2,在数据库用户之间移动对象.

3,在数据库之间移动对象

4,实现表空间搬移.

数据泵导出导入与传统导出导入的区别

在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项;EXP和IMP是客户段工具程序,它们既可以在可以客户端使用,也可以在服务端使用.EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件.

数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式.

EXPDP命令行选项

1. ATTACH

该选项用于在客户会话与已存在导出作用之间建立关联.语法如下

ATTACH=[schema_name.]job_name

Schema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:

Expdp scott/tiger ATTACH=scott.export_job

2. CONTENT

该选项用于指定要导出的内容.默认值为ALL

CONTENT={ALL | DATA_ONLY | METADATA_ONLY}

当设置CONTENT为ALL 时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump CONTENT=METADATA_ONLY

3. DIRECTORY

指定转储文件和日志文件所在的目录

DIRECTORY=directory_object

Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建

立的对象,而不是OS 目录

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump

建立目录:

CREATE DIRECTORY dump as ‘d:dump’;

查询创建了那些子目录:

SELECT * FROM dba_directories;

4. DUMPFILE

用于指定转储文件的名称,默认名称为expdat.dmp

DUMPFILE=*directory_object:+file_name *,….+

Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象

Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp

5. ESTIMATE

指定估算被导出表所占用磁盘空间分方法.默认值是BLOCKS

EXTIMATE={BLOCKS | STATISTICS}

设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间

Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS

DIRECTORY=dump DUMPFILE=a.dump

6. EXTIMATE_ONLY

指定是否只估算导出作业所占用的磁盘空间,默认值为N

EXTIMATE_ONLY={Y | N}

设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作.

Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y

7. EXCLUDE||INCLUDE

EXCLUDE选项用于指定执行操作时释放要排除对象类型或相关对象

INCLUDE 选项用于指定执行操作时关联对象类型或相关对象

EXCLUDE=object_type*:name_clause+ *,….+

Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE 和INCLUDE不能同时使用

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW

include/exclude 例子:

include=table:"in('DB','TS')"

或者include=table:"like '%E%'"

或者include=function,package,procedure,table:"='EMP'"

或者exclude=SEQUENCE,TABLE:"IN ('EMP','DEPT')"

8. FILESIZE

指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)

9. FLASHBACK_SCN

指定导出特定SCN时刻的表数据

FLASHBACK_SCN=scn_value

Scn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_SCN=358523

10. FLASHBACK_TIME

指定导出特定时间点的表数据

FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=

“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYY Y HH24:MI:SS’)”

11. FULL

指定数据库模式导出,默认为N

FULL={Y | N}

为Y时,标识执行数据库导出.

12. HELP

指定是否显示EXPDP命令行选项的帮助信息,默认为N

当设置为Y时,会显示导出选项的帮助信息.

Expdp help=y

14. JOB_NAME

指定要导出作用的名称,默认为SYS_XXX,可通过SQL查看job的运行状态

JOB_NAME=jobname_string

SELECT * FROM DBA_DATAPUMP_JOBS; --查看存在的job

15. LOGFILE|| NOLOGFILE

LOGFILE指定导出日志文件文件的名称,默认名称为export.log

NOLOGFILE选项用于指定禁止生成导出日志文件,默认值为N.

LOGFILE=[directory_object:]file_name

Directory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值.

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log

16. NETWORK_LINK

指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.

1.本机上创建连接远程数据库DBLINK:

可以先在目标主机上创建连接远程tns,再在date link关联tns名称。

newwork_link为目标数据库建立的database_link,

(用户test 需要grant exp_full_database to TEST; )

create public database link newwork_link

connect to TEST identified by oracle

using '(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.20.199)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = orcl)

)

)';

2.创建连接自己的database link:

create public database link system_self connect to system identified by "system" using 'orcl';

18. PARALLEL

指定执行导出操作的并行进程个数,默认值为1,数值最高不高于CPU个数.

19. PARFILE

指定导出参数文件的名称

PARFILE=[directory_path] file_name

20. QUERY

用于指定过滤导出数据的where条件

QUERY=[schema.] [table_name:] query_clause

Schema 用于指定方案名,table_name用于指定表名,query_clause用于指定条件限制子句.QUERY选项不能与CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES 等选项同时使用.

Expdp scott/tiger directory=dump dumpfiel=a.dmp Tables=emp query=’WHERE deptno=20’

21. SCHEMAS || TABLES || TABLESPACES

SCHEMAS : 方案用于指定执行方案模式导出,默认为当前用户方案.

TABLES : 指定表模式导出

TABLES=*schema_name.+table_name*:partition_name+*,…+

Schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.

TABLESPACES : 指定要导出表空间列表

22. TRANSPORT_FULL_CHECK

该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N.

当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.当设置为N时, 导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.

26. TRANSPORT_TABLESPACES

指定执行表空间模式导出

22. STATUS

指定显示导出作用进程的详细状态,默认值为0

27. VERSION

指定被导出对象的数据库版本,默认值为COMPATIBLE.

VERSION={COMPATIBLE | LATEST | version_string}

为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.

调用EXPDP

使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录.因此,使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.

1. 创建指定逻辑目录,在oracle中创建

SQL> create directory dir_home as '/u02/backup_files';

2. 给这个目录赋权限(可选)

SQL> grant read,write on directory dir_home to public; --公共

OR

SQL> grant read, write on directory dir_home to scott(用户名); --私有

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

查询创建了那些子目录:

SELECT * FROM dba_directories;

3. 在OS下,用oracle帐号创建指定的文件夹(/u02/backup_files )

$ mkdir /u02/backup_files1

注:不执行这步,报错:ORA-29283: invalid file operation

1,导出表(包括table,index,jos,produce)

Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp

include=table,job,index job_name=tablesname logfile=tbs.log

--导出lttfm用户下排除B$开头的所有表:

expdp lttfm/lttfm@fgisdb schemas=lttfm dumpfile=include_1.dmp logfile=include_1.log directory=dir_dp job_name=my_job include=TABLE:\"NOT LIKE \'B$%\'\"

--仅导出lttfm用户下的所有存储过程:

expdp lttfm/lttfm@fgisdb schemas=lttfm dumpfile=include_1.dmp logfile=include_1.log directory=dir_dp job_name=my_job include=PROCEDURE;

2、Exclude导出用户中指定类型的指定对象

--导出lttfm用户下除TABLE类型以外的所有对象,如果表不导出那么与表相关的索引,约束等与表有关联的对象类型也不会被导出:

expdp lttfm/lttfm@fgisdb schemas=lttfm dumpfile=exclude_1.dmp logfile=exclude_1.log directory=dir_dp job_name=my_job exclude=TABLE;

--导出lttfm用户下排除B$开头的所有表:

expdp lttfm/lttfm@fgisdb dumpfile=include_1.dmp logfile=include_1.log directory=dir_dp job_name=my_job exclude=TABLE:\"LIKE\'b$%\'\";

--导出lttfm用户下的所有对象,但是对于表类型只导出以b$开头的表:

expdp lttfm/lttfm@fgisdb dumpfile=include_1.dmp logfile=include_1.log directory=dir_dp job_name=my_job exclude=TABLE:\"NOT LIKE \'b$%\'\";

2,导出方案

Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp

SCHEMAS=system,scott

3.导出表空间

Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp

TABLESPACES=user01,user02

4,导出数据库

Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y

使用IMPDP

IMPDP命令行选项与EXPDP有很多相同的,不同的有:

1,REMAP_DATAFILE

该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.

REMAP_DATAFIEL=source_datafie:target_datafile

2,REMAP_SCHEMA

该选项用于将源方案的所有对象装载到目标方案中.

REMAP_SCHEMA=source_schema:target_schema

3,REMAP_TABLESPACE

将源表空间的所有对象导入到目标表空间中

REMAP_TABLESPACE=source_tablespace:target:tablespace

4.REUSE_DATAFILES

该选项指定建立表空间时是否覆盖已存在的数据文件.默认为N

REUSE_DATAFIELS={Y | N}

5.SKIP_UNUSABLE_INDEXES

指定导入是是否跳过不可使用的索引,默认为N

6,SQLFILE

指定将导入要指定的索引DDL操作写入到SQL脚本中

SQLFILE=[directory_object:]file_name

Impdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql

7.STREAMS_CONFIGURATION

指定是否导入流元数据(Stream Matadata),默认值为Y.

8,TABLE_EXISTS_ACTION

该选项用于指定当表已经存在时导入作业要执行的操作,默认为SKIP

TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | RPLACE }

当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表并追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项

9.TRANSFORM

该选项用于指定是否修改建立对象的DDL语句

TRANSFORM=transform_name:value[:object_type]

Transform_name 用于指定转换名,其中SEGMENT_ATTRIBUTES用于标识段属性(物理属性,存储属性,表空间,日志等信息),STORAGE用于标识段存储属性,VALUE用于指定是否包含段属性或段存储属性,object_type用于指定对象类型.

Impdp scott/tiger directory=dump dumpfile=tab.dmp

Transform=segment_attributes:n:table

10.TRANSPORT_DATAFILES

该选项用于指定搬移空间时要被导入到目标数据库的数据文件

TRANSPORT_DATAFILE=datafile_name

Datafile_name用于指定被复制到目标数据库的数据文件

Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp

TRANSPORT_DATAFILES=’/user01/data/tbs1.f’

调用IMPDP

导入schemas,tables,tabpesapce时,如果表存在,必须先删除表机构,才能成功导入与表相关联的信息,如果只导入数据,可以用truncate,需要加入:table_exists_action=replace这条.

1, 导入表

Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp

Impdp system/manage DIRECTORY=dump_dir DUMPFILE=tab.dmp

TABLES=scott.dept,scott.emp REMAP_SCHEMA=SCOTT:SYSTEM

第一种方法表示将DEPT和EMP表导入到SCOTT方案中,第二种方法表示将DEPT和EMP表导入的SYSTEM方案中,改变表的拥有者.

注意,如果要将表导入到其他方案中,必须指定REMAP_SCHEMA选项.

2,导入方案

数据迁移到目标数据库时,目标数据库必须有和原数据库导出schemas所在表空间同名的表空间名称,否则导入失败。

Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=scott

Impdp system/manager DIRECTORY=dump_dir DUMPFILE=schema.dmp

SCHEMAS=scott REMAP_SCHEMA=scott:system

3,导入表空间

Impdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp

TABLESPACES=user01

4,导入数据库

Impdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y

5, --复制某个数据库中的一个schema到另一个数据库中:

impdp system/manager network_link=TOLINK schemas=test remap_schema=test:link2

6,--在同一个数据库中把一个schema中所有的对象复制到另一个schema中:

--1.创建连接自己的database link:

create public database link system_self connect to system identified by "system" using 'orcl';

--2.复制hr schema到test schema:

impdp system/system network_link=system_self schemas=hr remap_schema=hr:test

1、按表导入

p_street_area.dmp文件中的表,此文件是以gwm用户按schemas=gwm导出的:

impdp gwm/gwm directory=dir_dp dumpfile =p_street_area.dmp tables=p_street_area job_name=my_job logfile=imp_p_street_area.log

2、按用户导入(可以将用户信息直接导入,即如果用户信息不存在的情况下也可以直接导入)

impdp gwm/gwm directory=dir_dp dumpfile =expdp_test.dmp schemas=gwm job_name=my_job logfile=expdp_test.log

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

== = = = = = = = = = = = = =

对其中几个参数,做一点总结:

DIRECTORY

EXPDP/IMPDP工具是基于服务端的,只要任务调起来了,就算客户端退出了EXPDP/IMPDP 进程,任务仍会在服务端运行。

所以这个DIRECTORY定义的是一个服务端的路径,存放导出的DUMPFILE,常见的操作如下:SQL> CREATE OR REPLACE DIRECTORY EXP_DIR as '/oradata/exp/';

Directory created.

SQL> select * from dba_directories where directory_name='EXP_DIR';

OWNER DIRECTORY_NAME DIRECTORY_PATH

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

SYS EXP_DIR /oradata/exp/

SQL> grant read,write on DIRECTORY EXP_DIR to rockey;

Grant succeeded.

SQL> select * from dba_tab_privs where table_name='EXP_DIR';

GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRA HIE

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

ROCKEY SYS EXP_DIR SYS WRITE NO NO

ROCKEY SYS EXP_DIR SYS READ NO NO

SQL> drop directory EXP_DIR; --删除逻辑文件夹

Directory dropped.

JOB_NAME

EXPDP/IMPDP 通过转化为数据库的JOB,可实现了任务的停止和重启。

指定JOB NAME,数据库中会创建一张相应名称的master table(MT),master table是用于记录EXPDP/IMPDP任务的相关信息。如果不指定,数据库将自动命名MT。JOB_NAME的指定,便于EXPDP任务的管理,建议命名格式:有意义名称+时间,例如这里我们将JOB_NAME 指定为EXP_TEST_20090815。

Master Table的查询:

SQL> select owner,table_name from dba_tables where table_name='EXP_TEST_20090815'; OWNER TABLE_NAME

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

ROCKEY EXP_TEST_20090815

JOB信息查询:

SQL> select * from dba_datapump_jobs where job_name='EXP_TEST_20090815';

OWNER_NAME JOB_NAME OPERATION JOB_MODE STATE DEGREE ATTACHED_SESSIONS DATAPUMP_SESSIONS

ROCKEY EXP_TEST_20090815 EXPORT TABLE EXECUTING 1 1 3

EXCLUDE\INCLUDE

通过EXCLUDE\INCLUDE参数,可以对特定的对象进行处理。

例如,导出除TEST以外的表:

EXCLUDE=TABLE:"='TEST'"

只导TEST和TEST_A表:

INCLUDE=TABLE:"IN ('TEST','TEST_A')"

只导出存储过程:

INCLUDE=PROCEDURE

ATTACH

EXPDP/IMPDP 的交互模式是相当强大的一点,通过ATTACH JOB,我们可以进入交互模式,进行包括stop、start、kill任务,对于EXPDP/IMPDP任务的管理,十分的方便。

进入交互模式时,首先会显示该任务的状态信息,通过stop_job可以中断任务:

$ expdp rockey/rockey@EMREP attach=exp_test_20090815

Export: Release 10.2.0.1.0 - 64bit Production on Saturday, 15 August, 2009 15:04:52

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, OLAP and Data Mining options

Job: EXP_TEST_20090815

Owner: ROCKEY

Operation: EXPORT

Creator Privs: FALSE

GUID: 7128C430B6C038D3E0440*******A0F7

Start Time: Saturday, 15 August, 2009 15:03:31

Mode: TABLE

Instance: EMREP

Max Parallelism: 1

EXPORT Job Parameters:

Parameter Name Parameter Value:

CLIENT_COMMAND parfile=/oradata/exp/expdp.par logfile=expdp14540.log State: EXECUTING

Bytes Processed: 0

Current Parallelism: 1

Job Error Count: 0

Dump File: /oradata/exp/exp_test.dmp

bytes written: 8,192

Worker 1 Status:

State: EXECUTING

Object Schema: ROCKEY

Object Name: TEST

Object Type: TABLE_EXPORT/TABLE/TABLE_DATA

Completed Objects: 1

Total Objects: 1

Completed Rows: 13,387,546

Worker Parallelism: 1

Export> stop_job

Are you sure you wish to stop this job ([yes]/no): yes

通过start_job,可以重启任务,不管是手工中断还是意外中断的任务:

$ expdp rockey/rockey@EMREP attach=exp_test_20090815

Export: Release 10.2.0.1.0 - 64bit Production on Saturday, 15 August, 2009 15:05:35

Copyright (c) 2003, 2005, Oracle. All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, OLAP and Data Mining options

Job: EXP_TEST_20090815

Owner: ROCKEY

Operation: EXPORT

Creator Privs: FALSE

GUID: 7128C430B6C038D3E0440*******A0F7

Start Time: Saturday, 15 August, 2009 15:05:36

Mode: TABLE

Instance: EMREP

Max Parallelism: 1

EXPORT Job Parameters:

Parameter Name Parameter Value:

CLIENT_COMMAND parfile=/oradata/exp/expdp.par logfile=expdp14540.log State: IDLING

Bytes Processed: 1,953,606,816

Percent Done: 99

Current Parallelism: 1

Job Error Count: 0

Dump File: /oradata/exp/exp_test.dmp

bytes written: 1,953,615,872

Worker 1 Status:

State: UNDEFINED

Export> start_job

Export> status

Job: EXP_TEST_20090815

Operation: EXPORT

Mode: TABLE

State: COMPLETING

Bytes Processed: 1,953,606,817

Percent Done: 100

Current Parallelism: 1

Job Error Count: 0

Dump File: /oradata/exp/exp_test.dmp

bytes written: 1,953,685,504

Worker 1 Status:

State: WORK WAITING

Centos7.6下oracle impdp导入和expdp导出

Centos7.6下Oracle11g数据泵导入导出 一、准备工作: 1、第一步:在服务器上创建真实的目录 [oracle@centos7 ~]$ su Password: [root@centos7 oracle]# mkdir -p /db_backup/dpump_dir [root@centos7 oracle]# cd /db_backup/dpump_dir [root@centos7 db_backup]# ls db_backup [root@centos7 data]# chmod -R 777 /db_backup/dpump_dir chown -R oracle:oinstall /db_backup/dpump_dir 2、第二步:用sys管理员登录sqlplus; [oracle@centos7 ~]$ sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on Wed Aug 5 19:03:39 2020 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL> conn sys/manager as sysdba Connected. SQL> startup 启动监听: [oracle@centos7 ~]$ lsnrctl start

3、第三步:创建逻辑目录; SQL> conn sys/manager as sysdba Connected. SQL> create directory dpump_dir as '/db_backup/dpump_dir'; Directory created. 4、第四步:查看管理员目录,检查是否存在; SQL> select * from dba_directories where directory_name = 'DPUMP_DIR'; OWNER ------------------------------------------------------------ DIRECTORY_NAME ------------------------------------------------------------ DIRECTORY_PATH -------------------------------------------------------------------------------- SYS

教你如何使用expdp和impdp备份和恢复数据库

教你如何使用expdp和impdp命令备份和恢复Oracle数据库

create directory aa as 'D:\aa'; grant read,write on directory aa to king2; expdp king2/king2test02 schemas=king2 directory=aa dumpfile=expuser.dmp 第一步:创建一个目录(也就是文件路径)来装导出的dmp文件 方法:操作系统—开始—运行输入“cmd”进入dos界面输入“sqlplus/nolog”按回车如下图: 连接数据库,输入:conn sys/king2test02 as sysdba(注意sys用户一定要用sysdba角色登录哦) 回车如下图:

接着,创建DIRECTORY create directory dir_dp as 'D:\oracle\dir_dp'; 这里要注意,路径D:\oracle\dir_dp一定要是系统已经存在的了,如果该路径不存在,下边的导出将会提示 正确创建了路径的显示如下:

第二步:授权(授予要导入数据的用户对该目录(路径)进行读和写的权限),还是在连接数据库的状态下输入: Grant read,write on directory dir_dp to lttfm; 如下图:

就完成了,关闭窗口,重新进入dos界面就可以进行备份了; 第三步:执行导出 expdp lttfm/lttfmfgisdb schemas=lttfm 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 启动"LTTFM"."SYS_EXPORT_SCHEMA_01": lttfm/********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 lttfm/lttfmfgisdb schemas=lttfm directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log,job_name=my_job1; 3、导出语句后面不要有分号,否则如上的导出语句中的job表名为‘my_job1;’,而不是my_job1。因此导致expdp lttfm/lttfm attach=lttfm.my_job1执行该命令时一直提示找不到job表

oracle使用数据泵导出和导入

使用数据泵导出和导入 几乎所有DBA都熟悉oracle的导出和导入实用程序,它们将数据装载进或卸载出数据库,在oracle database 10g和11g中,你必须使用更通用更强大的数据泵导出和导入(Data Pump Export and Import)实用程序导出和导入数据。 以前的导出和导入实用程序在oracle database 11g中仍然可以使用,但是Oracle强烈建议使用数据泵(Data Pump)技术,因为它提供了更多的高级特性。例如,你可以中断导出/导入作业,然后恢复它们;可以重新启动已失败的导出和导入作业;可以重映射对象属性以修改对象;可以容易地从另一个会话中监控数据泵的作业,甚至可以在作业过程中修改其属性;使用并行技术很容易快速移动大量的数据;因为oracle提供了针对数据泵技术的API,所以可以容易地在PL/SQL 程序中包含导出/导入作业;可以使用更强大的可移植表空间特性来快速移植大量的数据,甚至可在不同操作系统平台之间移动。 与旧的导出和导入实用程序不同,数据泵程序有一组可以在命令行中使用的参数以及一组只能以交互方式使用的特殊命令,你可以通过在命令行中输入expdp help = y 或者impdp help = y快速获取所有数据泵参数及命令的概述。 一.数据泵技术的优点 原有的导出和导入技术基于客户机,而数据泵技术基于服务器。默认所有的转储,日志和其他文件都建立在服务器上。以下是数据泵技术的主要优点: 1.改进了性能 2.重新启动作业的能力 3.并行执行的能力 4.关联运行作业的能力 5.估算空间需求的能力 6.操作的网格方式 7.细粒度数据导入功能 8.重映射能力 二.数据泵导出和导入的用途 1.将数据从开发环境转到测试环境或产品环境 2.在不同的操作系统平台上的oracle数据库直接的传递数据 3.在修改重要表之前进行备份 4.备份数据库 5.把数据库对象从一个表空间移动到另一个表空间 6.在数据库直接移植表空间 7.提取表或其他对象的DDL 注意:数据库不建立完备的备份,因为在导出文件中没有灾难发生时的最新数据。但是对于较小的数据库和个别的表空间的导出,数据导出仍然是一个可行的备份工具。 三.数据泵的组成部分

实例:使用expdpimpdp导入导出数据库

实例:使用expdp/impdp导入导出数据库 1.创建数据导出权限的目录 (注意oracle用户一定要有此目录的读写权限): SQL> create directory MY_DIR as '/home/dump'; 公司数据库都已经创建了对应的DIR目录,不建议继续创建新的,如有疑问可以联系我: 可以使用以下命令查看数据库中是否存在DIR目录 SQL> col DIRECTORY_PATH for a50; SQL> set linesize 150; SQL> select * from dba_directories; 查看目录及权限 --查看目录及权限 SQL> 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; 2.给该数据导出用户授予该目录的读写权限 SQL> grant read,write on DIRECTORY MY_DIR to user_name; (其中user_name为用户名称,本示例中user_name为zdyw2) 即: SQL> grant read,write on DIRECTORY MY_DIR to zdyw2; 3.使用expdp导出源数据库 expdp zdyw2/zdyw185test2 schemas=zdyw2 DIRECTORY=dir CONTENT=all DUMPFILE=zdywyf20121109_2.dmp logfile=zdywyf_exp20121109_2.log 其中: 1、zdyw2为导出数据库的用户,zdyw185test2为导出数据库的密码; 2、schemas为导出的用户的schemas,普通请款下为该用户名称; 3、Direcotry,DIR为导出文件的存放目录,此目录需要zdyw2有对应的操作权限, 4、zdywyf20121109_2.dmp为导出的文件名称,

expdp@impdp用法详解

一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。create directory dpdata1 as 'd:\test\dump'; 二、查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错) select * from dba_directories; 三、给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予。 grant read,write on directory dpdata1 to scott; 四、导出数据 1)按用户导 expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1; 2)并行进程parallel expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3 3)按表名导 expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1; 4)按查询条件导 expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE dep tno=20'; 5)按表空间导 expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=te mp,example; 6)导整个数据库 expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y; 五、还原数据 1)导到指定用户下 impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott; 2)改变表的owner impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept RE MAP_SCHEMA=scott:system; 3)导入表空间 impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=ex ample; 4)导入数据库 impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y; 5)追加数据 impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TA BLE_EXISTS_ACTION=append; ----------------------------Expdp/Impdp的相关参数---------------------------- EXPDP命令行选项 1. ATTACH 该选项用于在客户会话与已存在导出作用之间建立关联.语法如下

oracle 10g数据库expdp,impdp

Expdp与impdp使用 Expdp 1.创建目录 Create or replace directory DIR_DP as'/orabak'; 1)可以使用system 创建; 2)Aix下的oracle用户需要对相应的目录具备读写的权限; 3)嘉兴使用的是orabak路径;本地路径为导出数据库所在目录,例”e:\orabak”; 2.赋予权限; Grant Read, Write on directory DIR_DP to jxcz; 1)使用system用户赋权; 2)确认是否有权限: select * from dba_directories where DIRECTORY_NAME = 'DIR_DP'; 3.通过shell,以oracle登录: 直接执行命令: Expdp jxcz/ufgov1234 DIRECTORY=dir_dp DUMPFILE=jxcz.dmp EXCLUDE=TABLE:\"IN \(\'BA_RECEIVE_SS_CZ613_BODY\',\'SS_TO_BANK_DATA\',\'SS_TRANS_R ECORD\',\'BA_RECEIVE_RECORD_XML\',\'BA_SEND_RECORD_XML\',\'NT_B ILL\',\'NT_BILL_ITEM\',\'NT_JB_HX_PJMX_LOG\',\'NT_DATA_DEL_LOG\ ',\'NT_JB_HX_PJQD_LOG\',\'FA_CARD_MO\',\'FA_CARD\',\'AS_FILE\', \'AS_LOG\'\)\" expdp jxcz/ufgov2012 DIRECTORY=dir_dp DUMPFILE=jxcz1210.dmp EXCLUDE=TABLE:\"IN\(\'BA_RECEIVE_SS_CZ613_BODY\', \'BANK_TRADE_LOG\',\'GK_JXCZ_ZH_ZCCX\',\'NT_JXCZ_COMPANY_NJZCB\ ',\' AS_LOG \',\' CP_VOUCHER \',\'SS_TO_BANK_DATA\',\'SS_TRANS_RECORD\',\'BA_RECEIVE_RECORD_ XML\',\'BA_SEND_RECORD_XML\',\'NT_BILL\',\'NT_BILL_ITEM\',\'NT_ JB_HX_PJMX_LOG\',\'NT_DATA_DEL_LOG\',\'NT_JB_HX_PJQD_LOG\',\'FA _CARD_MO\',\'FA_CARD\',\'AS_FILE\'\)\" 1)Expdp中的e必须小写; 2)EXCLUDE需要全部大写; 3)Aix需要使用”\”,windows 不需要; 4)注意修改dmp文件; 5)命令把平常比较大的几张物理表排除了,如果需要个别的物理表,请自行删除去除的语句; 注:(1)以上几张表目前占了嘉兴数据库的80%的空间(2)删除时请注意EXCLUDE 的语法,出错往往是里面的值有错了。 6)查询占用空间比较大的表语句为: Select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments t

ORACLE EXPDP命令使用详细

ORACLE EXPDP命令使用详细 1. DIRECTORY 指定转储文件和日志文件所在的目录 DIRECTORY=directory_object Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS目录 Expdp scott/tiger DIRECTORY= DMP DUMPFILE=a.dump Sql>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 DUMPFILE用于指定转储文件的名称,默认名称为expdat.dmp DUMPFILE=[directory_object:]file_name [,….]

expdp impdp使用总结

expdp/impdp 使用总结 expdp/impdp 使用总结 1.使用expdp要先在数据库中创建directory,并给相应的用户read,write权限. SQL>create directory dmpdir as '/u01/dmdir'; SQL>grant read,write on directory to test; 2.最常用导出方法 $expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=test $expdp scott/tiger DUMPFILE=tmp_dump.dmp DIRECTORY=dmpdir TABLES=(tmp_test:p1,tmp_test:p2) JOB_NAME=tmp_dump LOGFILE=tmp_dump.log $expdp scott/tiger DUMPFILE=full.dmp DIRECTORY=dmpdir FULL=Y JOB_NAME=full $expdp scott/timer DUMPFILE=tmp_200703.dmp DIRECTORY=dmpdir TABLES=tmp QUERY=\"where to_char\(create_time,\'yyyy-mm-dd\'\)\<\'2007-04\'\" 常用一些参数说明: SCOTT/TIGER:用户/密码(*) DUMPFILE:导出后的文件名(*) DIRECTORY:导出文件存放位置(位于服务器端)(*) CONTENT:导出文件中包含的内容(默认为:ALL,可选DATA_ONLY/METADATA_ONLY) FILESIZE:指定导出文件大小(单位为bytes). JOB_NAME:此次导出进程使用的名称,方便跟踪查询(可选) LOGFILE:日志文件名(默认为:export.log) INCLUDE:导出时包含指定的类型 (例:INCLUDE=TABLE_DATA, INCLUDE=TABLE:"LIKE 'TAB%'" INCLUDE=TABLE:”NOT LIKE …TAB%?”…) EXCLUDE:导出时排除的数据类型(例:EXCLUDE=TABLE:EMP) FULL:全库导出时使用(同EXP的FULL,默认为N) SCHEMA:导出某一个SCHEMA下的所有数据 TABLES:按表导出(这里的方法和EXP一样) TABLESPACE:指定一个表空间导出. QUERY:按表导出时,使用条件语句限定导出范围(同exp中的QUERY)

oracle数据备份之expdpimpdp

oracle数据备份之expdp/impdp (2011-03-03 17:04) 标签: oracle数据库空间分类:oracle ORCALE10G提供了新的导入导出工具,数据泵。 Oracle官方对此的形容是:OracleDataPump technology enables Very High-Speed movement of data and metadata from one database to another.其中Very High-Speed是亮点。 先说数据泵提供的主要特性(包括,但不限于): 1. 支持并行处理导入、导出任务 2. 支持暂停和重启动导入、导出任务 3. 支持通过Database Link的方式导出或导入远端数据库中的对象 4. 支持在导入时通过Remap_schema、Remap_datafile、Remap_tablespace几个参数实现导入过程中自动修改对象属主、数据文件或数据所在表空间。 5. 导入/导出时提供了非常细粒度的对象控制。通过Include、Exclude两个参数,甚至可以详细制定是否包含或不包含某个对象。 Warning: 1. 什么是Directory对象 Directory对象是Oracle10g版本提供的一个新功能。他是一个指向,指向了操作系统中的一个路径。每个Directory都包含 Read,Write两个权限,可以通过Grant命令授权给指定的用户或角色。拥有读写权限的用户就可以读写该Directory对象指定的操作系统路径下的文件。 2. 无论在什么地方使用expdp,生成的文件最终页是在服务器上(Directory指定的位置) 如何调用 1. 命令行方式 最简单的调用,但是写的参数有限,建议使用参数文件的方式。 2. 参数文件方式 最常用的方式。通常需要先编写一个参数文件。指定导出时需要的各种参数。然后以如下方式调用。 expdp user/pwdparfile=xxx.par 这个xxx.par即是我们编辑的参数文件。注意,在这个命令行后面,同样可以再跟别的参数,甚至是在par参数文件中指定过的参数。如果执行命令中附加的参数与参数文件中的参数有重复,最终采用哪个参数,会以参数最后出现的位置而定。如:expdp user/pwdparfile=xxx.par logfile=a.log,如果在参数文件中也指定了logfile,这里会以命令行中的logfile为准;如:expdp user/pwd logfile=a.log parfile=xxx.par,而这个,则会以参数文件中的为准,因为parfile=xxx.par写在命令行的后面。

[原创]Oracle数据导入导出(另exp和expdp对比)

本文包含exp/imp,expdp/impdp的使用说明和常用参数详解 另外包括一个有趣的测试 一、Oracle数据库EXP\IMP\EXPDP\IMPDP使用说明1.Exp数据导出 1.1.exp关键字说明 关键字说明(默认值) ------------------------------ USERID 用户名/口令 BUFFER 数据缓冲区大小 FILE 输出文件(EXPDAT.DMP) COMPRESS 导入到一个区(Y) GRANTS 导出权限(Y) INDEXES 导出索引(Y) DIRECT 直接路径(N) --直接导出速度较快 LOG 屏幕输出的日志文件 ROWS 导出数据行(Y) CONSISTENT 交叉表的一致性(N) FULL 导出整个文件(N) OWNER 所有者用户名列表 TABLES 表名列表 RECORDLENGTH IO记录的长度 INCTYPE 增量导出类型 RECORD 跟踪增量导出(Y) TRIGGERS 导出触发器(Y) STATISTICS 分析对象(ESTIMATE) PARFILE 参数文件名 CONSTRAINTS 导出的约束条件(Y) OBJECT_CONSISTENT 只在对象导出期间设置为只读的事务处理(N) FEEDBACK 每x 行显示进度(0) FILESIZE 每个转储文件的最大大小 FLASHBACK_SCN 用于将会话快照设置回以前状态的SCN FLASHBACK_TIME 用于获取最接近指定时间的SCN 的时间 QUERY 用于导出表的子集的select 子句 RESUMABLE 遇到与空格相关的错误时挂起(N) RESUMABLE_NAME 用于标识可恢复语句的文本字符串 RESUMABLE_TIMEOUT RESUMABLE 的等待时间 TTS_FULL_CHECK 对TTS 执行完整或部分相关性检查 TABLESPACES 要导出的表空间列表

数据泵expdp&impdp

数据泵EXPDP 导出工具的使用 分类:Oracle Datapump2010-10-07 18:10 8378人阅读评论(7) 收藏举报工具oracleprocessingobjectstatistics --================================= --数据泵 EXPDP 导出工具的使用 --================================= 对于Oracle 数据库之间的导入导出,可以使用Oracle提供的导入导出工具EXP/IMP来实现。EXP/IMP是Oracle早期提供的数据导入导出工具。在Oracle 10g 中,提供了高速导入导出数据泵IMPDP,EXPDP,本文主要讲述EXPDP的用法。 关于IMPDP的用法,请参照:数据泵IMPDP 导入工具的使用 一、数据泵的体系结构 数据泵是一个基于服务器端的高速导入导出工具,通过dbms_datapump包来调用 提供expdp,impdp,以及基于Web页面来实现导入导出 提供两种数据数据方式方式:直接路径、外部表 可以定制数据泵作业,以及从作业中分离和重新附加到作业 服务器端的数据泵是直接访问数据文件与SGA,不必通过会话进行访问 数据泵进程 对Unix系统而言,数据泵进程为expdp,impdp 对Windows系统而言,数据泵进程为expdp.exe,impdp.exe 启动一个DataPump作业,至少会启动下列两个进程,一个Data Pump Master(DMnn),一个或多个工作进程(DWnn),主进程控制工作进程 如果多个DataPump作业同时运行,那么每个作业都具有自己的DMnn进程以及自己的DWnn进程 如果设置了并行技术,则每个DWnn进程可以使用两个或多个并行执行服务器(名称为Pnnn) DataPump生成下列三种形式的文件 SQL文件:描述指定作业所包含对象的若干DDL语句 转储文件:即包含数据和元数据的文件 日志文件:用于记录导出时的相关信息 目录

使用expdp以及impdp导入导出数据库

使用数据泵备分恢复数据库 特别注意: 以下介绍的EXPDP、IMPDP命令最后面不允许使用分号“;”结尾否则命令会报错 使用expdp以及impdp导入导出数据库用户的效率比exp、imp要快很多,下面介绍具体的操作方式: 一、创建备份目录并授权 注意,备份目录是指服务器上的目录,需要首先在相应的目录上创建目录,且创建以及指向的目录所在的盘符要具备相应的空间。 C:\sqlplus user/password@orcl SQL> create directory databf as 'd:\oracle\bf'; 创建备份或者导出时指向的目录 目录已创建。 SQL> grant read, write on directory databf to nc57; 授权成功。 二、备份导出 expdp nc57/nc57@orcl DIRECTORY=databf DUMPFILE=nc57.dmp logfile=expnc57.log SCHEMAS=nc57,nc56 上述命令导出了两个用户:NC57、NC56 二、备份的数据的恢复 注意:由于备份的数据是在服务器上的,所以如果要恢复到其他机器上,需要先把备份的数据拷贝到目标服务器上。 同样需要先指定备份的目录: C:\sqlplus user/password@orcl SQL> create directory databf as 'd:\oracle\bf'; 创建备份或者导出时指向的目录 目录已创建。 备份之前首先要创建用户,然后授权:

grant read,write on directory databf to nc57; 成功。 D:\oracle\bf>impdp nc57/1@orcl directory=databf dumpfile=nc5710131220.dmp remap_schema=nc57:nc571 上述命令把原导出的用户nc57导入到用户nc571中 导入时使用exclude=table_statistics 可以避免导入table_statistics出现问题 样例: expdp system/sys@orcl92 directory=databf dumpfile=nc57_zzyxwt.dmp logfile=expzzyx.log schemas=nc57px exclude=table:\"like\'H%\'\" exclude=table:\"like\'WA%\'\" exclude=table:\"like\'RM_%\'\" exclude=table:\"like\'FA%\'\" exclude=table_statistics query='WHERE deptno=20' expdp system/sys@orcl92 directory=databf dumpfile=nc57_zzyxwt1.dmp logfile=expzzyx1.log schemas=nc57px exclude=table:\"not like\'BD_PSNBASDO%\'\" exclude=table_statistics impdp system/sys@orcl92 directory=databf dumpfile=nc57_zzyxwt.dmp logfile=impzzyx.log remap_schema=nc57px:test exclude=table:\"like\'NTB%\'\" 详细说明: 数据泵文件 expdp介绍 EXPDP命令行选项 1. ATTACH 该选项用于在客户会话与已存在导出作用之间建立关联.语法如下 ATTACH=[schema_name.]job_name Schema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTAC H选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下: Expdp scott/tiger ATTACH=scott.export_job 2. CONTENT 该选项用于指定要导出的内容.默认值为ALL CONTENT={ALL | DATA_ONLY | METADATA_ONLY}

数据泵导入导出详解

数据泵技术是Oracle Database 10g 中的新技术,它比原来导入/导出(imp,exp)技术快15-45倍。速度的提高源于使用了并行技术来读写导出转储文件。 expdp使用 使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录。因此使用EXPDP工具时,,必须首先建立DIRECTORY对象,并且需要为数据库用户授予使用DIRECTORY对象权限。 首先得建DIRECTORY: SQL> conn /as sysdba SQL> CREATE OR REPLACE DIRECTORY dir_dump AS '/u01/backup/'; SQL> GRANT read,write ON DIRECTORY dir_dump TO public; 1) 导出scott整个schema --默认导出登陆账号的schema $ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容: DIRECTORY=dir_dump DUMPFILE=scott_full.dmp LOGFILE=scott_full.log --其他账号登陆, 在参数中指定schemas $ expdp system/oracle@db_esuiteparfile=/orahome/expdp.par expdp.par内容: DIRECTORY=dir_dump DUMPFILE=scott_full.dmp

LOGFILE=scott_full.log SCHEMAS=SCOTT 2) 导出scott下的dept,emp表 $ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容: DIRECTORY=dir_dump DUMPFILE=scott.dmp LOGFILE=scott.log TABLES=DEPT,EMP 3) 导出scott下除emp之外的表 $ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容: DIRECTORY=dir_dump DUMPFILE=scott.dmp LOGFILE=scott.log EXCLUDE=TABLE:"='EMP'" 4) 导出scott下的存储过程 $ expdpscott/tiger@db_esuiteparfile=/orahome/expdp.par expdp.par内容: DIRECTORY=dir_dump DUMPFILE=scott.dmp

expdp 和impdp的笔记

expdp 和impdp的笔记 Oracle Database 10g引入了最新的数据泵(Data Dump)技术,使DBA或开发人员可以将数据库元数据(对象定义)和数据快速移动到另一个oracle数据库中. 数据泵导出导入(EXPDP和IMPDP)的作用 1,实现逻辑备份和逻辑恢复. 2,在数据库用户之间移动对象. 3,在数据库之间移动对象 4,实现表空间搬移. 数据泵导出导入与传统导出导入的区别 在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP 和IMPDP时应该注意的事项; EXP和IMP是客户段工具程序,它们既可以在可以客户端使用,也可以在服务端使用. EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用 IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件.数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式. expdp选项 1):ATTACH不能与其他选项一起使用 2):CONTENT要导出的内容默认值ALL DATA_ONLY METADATA_ONLY 3):DIRECTORY 指定转储文件和日志文件的所在地 DIRECTORY=directory_object数据库目录对象) expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp 4):DUMPFILE指定转储文件的名称,默认为expdata.dmp 5):ESTIMAT选项用于估算导出表所占的空间 expdp scott/tiger TABLE=emp ESTIMAT=STATISTICS|BLOCKS 6):ESTIMATE_ONLY改选项只是估算导出对象所占的空间,默认值为Y 7):EXCLUDE执行导出操作时要排除的对象或相关对象,与INCLUDE选项不能一起使用 expdp scott/tiger DIRECTORY=dump DUMPFILE=A.DMP EXCLUDE=view 8):FILESIZE导出文件的最大尺寸,默认值为0(没有限制)

Oracle 11G R2 用exp无法导出空表解决方法及expdp和impdp的用法

Oracle 11G R2 用exp无法导出空表解决方法Oracle 11G在用EXPORT导出时,空表不能导出 11G R2中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法: 一、insert一行,再rollback就产生segment了。 该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导出空表。 二、设置deferred_segment_creation 参数 该参数值默认是TRUE,当改为FALSE时,无论是空表还是非空表,都分配segment。修改SQL语句: alter system set deferred_segment_creation=false scope=both; 需注意的是:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。如需导出之前的空表,只能用第一种方法。 三、用以下这句查找空表 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0; 把查询结果导出,执行导出的语句,强行修改segment值,然后再导出即可导出空表, 注意:数据库插入数据前,修改11g_R2参数可以导出空表 查找空表 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 四、Oracle 10g以后增加了expdp和impdp工具,用此 工具也可以导出空的表 oracle expdp/impdp 用法详解 1)创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等 管理员创建。 create directory db_bak as 'd:\test\dump';

expdp参数详解

expdp 1.attach 用于在客户会话与已存在的作业建立联系 attach=[schema_name.]job_name 查看job_name :SELECT * FROM DBA_DATAPUMP_JOBS https://www.doczj.com/doc/0c6629167.html,pression 11g 用于指定导出时要压缩的数据,默认metadata_only compression={all| data_only |metadata_only | none} all 压缩元数据和对象数据data_only 只压缩对象数据metadata_only 只压缩元数据none 不压缩任何数据 3.content 指定要导出的内容,默认all content={all | data_only | metadata_only } all 对象结够及数据data_only 表示导出数据metadata_only 只导出对象结构 4.data_options 11g 用于为某些类型的数据提供选项11g xnl_clobs 5.directory 指定转储文件的目录 directory=directory_object 6.dumpfile 指定转储文件的名称 dumpfile=[directory_object:]file_name[,.....] 7.encryption 是否加密导出数据默认none encryption={all | data_only |metadata_only | encrypted_columns_only | none} all 对象和元数据d ata_only 对象加密metadata_only 元数据加密encryption_columns_only 只加密加密列none 不加密 8.encryption_algorithm 加密算法默认aes128 encryption_algorithm= {aes128 | aes 192 | aes 256} 9.encryption_mode 加密和解密所使用的安全类型 encryption_mode={dual | password |transparent } dual 表示用oracle wallet 或指定口令建立导出文件password 指定口令建立导出文件transparent oracle wallet建立导出文件 10.encryption_password 指定加密和解密口令encryption_password=password 11.estimate 估计被导出表所占用的磁盘空间的方法默认:blocks estimate={blocks |statistics} blocks 安照目标对象所占用的数据块个数乘以数据块的尺寸估计对象占用的空间,statics 安装最近的统计值估算对象占用的表空间

Oracle 数据泵详解

Oracle 数据泵详解 一、EXPDP和IMPDP使用说明 Oracle Database 10g引入了最新的数据泵(Data Dump)技术,数据泵导出导入(EXPDP和IMPDP)的作用 1)实现逻辑备份和逻辑恢复. 2)在数据库用户之间移动对象. 3)在数据库之间移动对象 4)实现表空间搬移. 二、数据泵导出导入与传统导出导入的区别 在10g之前,传统的导出和导入分别使用EXP工具和IMP工具,从10g开始,不仅保留了原有的EXP和IMP工具,还提供了数据泵导出导入工具EXPDP和IMPDP.使用EXPDP和IMPDP时应该注意的事项: 1)EXP和IMP是客户端工具程序,它们既可以在可以客户端使用,也可以在服务端使用。 2)EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。

3)IMP只适用于EXP导出文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出文件,而不适用于EXP导出文件。 数据泵导出包括导出表,导出方案,导出表空间,导出数据库4种方式.三、Expdp参数 EXPDP命令行选项,可通过expdp help=y查看: E:\emp>expdp help=y Export: Release 10.2.0.1.0- Production on 星期日, 03 5月, 2009 17:54:49 Copyright (c) 2003, 2005, Oracle. All rights reserved. 数据泵导出实用程序提供了一种用于在 Oracle 数据库之间传输 数据对象的机制。该实用程序可以使用以下命令进行调用: 示例: expdp scott/tigerDIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导出的运行方式。具体方法是: 在 'expdp' 命令后输入 各种参数。要指定各参数, 请使用关键字: 格式: expdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

相关主题
文本预览
相关文档 最新文档