用例一,expdp使用去除条件参数导出数据:
expdp 用户名/密码 directory=xx dumpfile=xx.dmp logfile=xx.log job_name=xx tables=A exclude=index
此用例使用exclude参数去除索引,在导出A表时不导索引;
用例二,expdp使用去除条件参数导出数据:
expdp 用户名/密码 directory=xx dumpfile=xx%U.dmp logfile=xx.log job_name=xx tables=A exclude=index parallel=3
此用例使用exclude参数去除索引,在导出A表时不导索引并切割成3个dmp文件。
expdp与impdp参数用法
一、创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建。
create directory dpdata as '/opt';
二、查看管理理员目录(同时查看操作系统是否存在,因为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 deptno=20';
5)按表空间导
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,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 REMAP_SCHEMA=scott:system;
3)导入表空间
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;
4)导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;
5)追加数据
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION
六、参数说明-----导入impdp
1、TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项;
2、REMAP_SCHEMA
该选项用于将源方案的所有对象装载到目标方案中:REMAP_SCHEMA=source_schema:target_schema
3、REMAP_TABLESPACE
将源表空间的所有对象导入到目标表空间中:REMAP_TABLESPACE=source_tablespace:target:tablespace
4、REMAP_DATAFILE
该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.
REMAP_DATAFIEL=source_datafie:target_datafile
七、参数说明-----导出expdp
1、CONTENT:该选项用于指定要导出的内容.默认值为ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
当设置CONTENT为ALL 时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义
2、DIRECTORY:指定转储文件和日志文件所在的目录:DIRECTORY=directory_object
3、EXCLUDE:该选项用于指定执行操作时释放要排除对象类型或相关对象
EXCLUDE=object_type[:name_clause] [,….]
Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE和INCLUDE不能同时使用
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
4、INCLUDE:导出时包含指定的类型
(例:INCLUDE=TABLE_DATA,
INCLUDE=TABLE:"LIKE 'TAB%'"
INCLUDE=TABLE:”NOT LIKE ‘TAB%’”…)
EXCLUDE:导出时排除的数据类型(例:EXCLUDE=TABLE:EMP)
5、FILESIZE:指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)(单位为bytes).
6、JOB_NAME:此次导出进程使用的名称,方便跟踪查询(可选)
7、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
8、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-YYYY HH24:MI:SS’)”
9、TABLESPACE:指定一个表空间导出.
10、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’
11、PARALLEL:并行操作: 指定执行导出操作的并行进程个数,默认值为1
您可以通过PARALLEL 参数为导出使用一个以上的线程来显著地加速作业。每个线程创建一个单独的转储文件,因此参数dumpfile 应当拥有和并行度一样多的项目。您可以指定通配符作为文件名,而不是显式地输入各个文件名,例如:
expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export
注意:dumpfile 参数拥有一个通配符%U,它指示文件将按需要创建,格式将为expCASES_nn.dmp,其中nn 从01 开始,然后按需要向上增加。
在并行模式下,状态屏幕将显示四个工作进程。(在默认模式下,只有一个进程是可见的)所有的工作进程同步取出数据,并在状态屏幕上显示它们的进度。
分离访问数据文件和转储目录文件系统的输入/输出通道是很重要的。否则,与维护Data Pump 作业相关的开销可能超过并行线程的效益,并因此而降低性能。并行方式只有在表的数量多于并行值并且表很大时才是有效的。
关于DIRECOTRY参数:
这个目录需要有sysdba用户创建,具体语法见本文最前面,创建完毕后,授权给其他用户使用,read ,write权限,然后创建物理目录
说到这里,有必要说明一下DB建立完毕后,系统有几个缺省的目录
expdp参数说明(中文)
数据泵导出实用程序提供了一种用于在 Oracle 数据库之间传输 数据对象的机制。该实用程序可以使用以下命令进行调用: 示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导出的运行方式。具体方法是: 在 'expdp' 命令后输入 各种参数。要指定各参数, 请使用关键字: 格式: expdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 示例: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scott 或 TABLES=(T1:P1,T1:P2), 如果 T1 是分区表 USERID 必须是命令行中的第一个参数。------------------------------------------------------------------------------以下是可用关键字和它们的说明。方括号中列出的是默认值。 ATTACH 连接到现有作业。 例如, ATTACH=job_name。 COMPRESSION 减少转储文件大小。 有效的关键字值为: ALL, DATA_ONLY, [METADATA_ONLY] 和 NONE。 CONTENT 指定要卸载的数据。 有效的关键字值为: [ALL], DATA_ONLY 和 METADATA_ONLY。 DATA_OPTIONS 数据层选项标记。 有效的关键字值为: XML_CLOBS。 DIRECTORY 用于转储文件和日志文件的目录对象。 DUMPFILE 指定目标转储文件名的列表 [expdat.dmp]。 例如, DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.dmp。 ENCRYPTION 加密某个转储文件的一部分或全部。 有效的关键字值为: ALL, DATA_ONLY, ENCRYPTED_COLUMNS_ONLY, METADATA_ONLY 和 NONE 。 ENCRYPTION_ALGORITHM 指定加密的方式。 有效的关键字值为: [AES128], AES192 和 AES256。 ENCRYPTION_MODE 生成加密密钥的方法。 有效的关键字值为: DUAL, PASSWORD 和 [TRANSPARENT]。 ENCRYPTION_PASSWORD 用于在转储文件中创建加密数据的口令密钥。 ESTIMATE 计算作业估计值。 有效的关键字值为: [BLOCKS] 和 STATISTICS。 ESTIMATE_ONLY 计算作业估计值而不执行导出。 EXCLUDE 排除特定对象类型。 例如, EXCLUDE=SCHEMA:"='HR'"。 FILESIZE 以字节为单位指定每个转储文件的大小。 FLASHBACK_SCN 用于重置会话快照的 SCN。 FLASHBACK_TIME 用于查找最接近的相应 SCN 值的时间。 FULL 导出整个数据库 [N]。 HELP 显示帮助消息 [N]。 INCLUDE 包括特定对象类型。 例如, INCLUDE=TABLE_DATA。 JOB_NAME 要创建的导出作业的名称。 LOGFILE 指定日志文件名 [export.log]。 NETWORK_LINK 源系统的远程数据库链接的名称。 NOLOGFILE 不写入日志文件 [N]。 PARALLEL 更改当前作业的活动 worker 的数量。 PARFILE 指定参数文件名。 QUERY 用于导出表的子集的谓词子句。 例如, QUERY=employees:"WHERE department_id > 10"。 REMAP_DATA 指定数据转换函数。 例如, REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO。 REUSE_DUMPFILES 覆盖目标转储文件 (如果文件存在) [N]。 SAMPLE 要导出的数据的百分比。 SCHEMAS 要导出的方案的列表 [登录方案]。 SOURCE_EDITION 用于提取元数据的版本。 STATUS 监视作业状态的频率, 其中 默认值 [0] 表示只要有新状态可用, 就立即显示新状态。 TABLES 标识要导出的表的列表。 例如, TABLES=HR.EMPLOYEES,SH.SALES:SALES_1995。 TABLESPACES 标识要导出的表空间的列表。 TRANSPORTABLE 指定是否可以使用可传输方法。 有效的关键字值为: ALWAYS 和 [NEVER]。 TRANSPORT_FULL_CHECK 验证所有表的存储段 [N]。 TRANSPORT_TABLESPACES 要从中卸载元数据的表空间的列表。 VERSION 要导出的对象版本。 有效的关键字值为: [COMPATIBLE], LATEST 或任何有效的数据库版本。------------------------------------------------------------------------------下列命令在交互模式下有效。 注: 允许使用缩写。 ADD_FILE 将转储文件添加到转储文件集。 CONTINUE_CLIENT 返回到事件记录模式。如果处于空闲状态, 将重新启动作业。 EXIT_CLIENT 退出客户机会话并使作业保持运行状态。 FILESIZE 用于后续 ADD_FILE 命令的默认文件大小 (字节)。 HELP 汇总交互命令。 KILL_JOB 分离并删除作业。 PARALLEL 更改当前作业的活动 worker 的数量。 REUSE_DUMPFILES 覆盖目标转储文件 (如果文件存在) [N]。 START_JOB 启动或恢复当前作业。 有效的关键字值为: SKIP_CURRENT。 STATUS 监视作业状态的频率, 其中 默认值 [0] 表示只要有新状态可用, 就立即显示新状态。 STOP_JOB 按顺序关闭作业执行并退出客户机。 有效的关键字值为: IMMEDIATE。复制