expdp之于exp的优势在于花费时间要少,导出的文件要小,另外就像上面所述对文件属性有更大的支持。
1、对于exp/imp导出语句是这样的:
exp username/password@ip/sid file=/tmp/140423.dmp full=y
scp /tmp/140423.dmp root@ip1:/home/oracle/
imp username/password@ip/sid file=/home/oracle/140423.dmp full=Y 这样就是把该用户下所有的数据都给拷贝过来了。
其他的一些资料可以查看 exp help=y:
You can let Export prompt you for parameters by entering the EXP
command followed by your username/password:
Example: EXP SCOTT/TIGER
Or, you can control how Export runs by entering the EXP command followed
by various arguments. To specify parameters, you use keywords:
Format: EXP KEYWORD=value or KEYWORD=(value1,value2,...,valueN)
Example: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
or TABLES=(T1:P1,T1:P2), if T1 is partitioned table
USERID must be the first parameter on the command line.
Keyword Description (Default) Keyword Description (Default)
--------------------------------------------------------------------------
USERID username/password FULL export entire file (N)
BUFFER size of data buffer OWNER list of owner usernames
FILE output files (EXPDAT.DMP) TABLES list of table names
COMPRESS import into one extent (Y) RECORDLENGTH length of IO record
GRANTS export grants (Y) INCTYPE incremental export type
INDEXES export indexes (Y) RECORD track incr. export (Y)
DIRECT direct path (N) TRIGGERS export triggers (Y)
LOG log file of screen output STATISTICS analyze objects (ESTIMATE)
ROWS export data rows (Y) PARFILE parameter filename
CONSISTENT cross-table consistency(N) CONSTRAINTS export constraints (Y)
OBJECT_CONSISTENT transaction set to read only during object export (N)
FEEDBACK display progress every x rows (0)
FILESIZE maximum size of each dump file
FLASHBACK_SCN SCN used to set session snapshot back to
FLASHBACK_TIME time used to get the SCN closest to the specified time
QUERY select clause used to export a subset of a table
RESUMABLE suspend when a space related error is encountered(N)
RESUMABLE_NAME text string used to identify resumable statement
RESUMABLE_TIMEOUT wait time for RESUMABLE
TTS_FULL_CHECK perform full or partial dependency check for TTS
VOLSIZE number of bytes to write to each tape volume
TABLESPACES list of tablespaces to export
TRANSPORT_TABLESPACE export transportable tablespace metadata (N)
TEMPLATE template name which invokes iAS mode export
imp help=y:
Example: IMP SCOTT/TIGER
Or, you can control how Import runs by entering the IMP command followed
by various arguments. To specify parameters, you use keywords:
Format: IMP KEYWORD=value or KEYWORD=(value1,value2,...,valueN)
Example: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N
or TABLES=(T1:P1,T1:P2), if T1 is partitioned table
USERID must be the first parameter on the command line.
Keyword Description (Default) Keyword Description (Default)
--------------------------------------------------------------------------
USERID username/password FULL import entire file (N)
BUFFER size of data buffer FROMUSER list of owner usernames
FILE input files (EXPDAT.DMP) TOUSER list of usernames
SHOW just list file contents (N) TABLES list of table names
IGNORE ignore create errors (N) RECORDLENGTH length of IO record
GRANTS import grants (Y) INCTYPE incremental import type
INDEXES import indexes (Y) COMMIT commit array insert (N)
ROWS import data rows (Y) PARFILE parameter filename
LOG log file of screen output CONSTRAINTS import constraints (Y)
DESTROY overwrite tablespace data file (N)
INDEXFILE write table/index info to specified file
SKIP_UNUSABLE_INDEXES skip maintenance of unusable indexes (N)
FEEDBACK display progress every x rows(0)
TOID_NOVALIDATE skip validation of specified type ids
FILESIZE maximum size of each dump file
STATISTICS import precomputed statistics (always)
RESUMABLE suspend when a space related error is encountered(N)
RESUMABLE_NAME text string used to identify resumable statement
RESUMABLE_TIMEOUT wait time for RESUMABLE
COMPILE compile procedures, packages, and functions (Y)
STREAMS_CONFIGURATION import streams general metadata (Y)
STREAMS_INSTANTIATION import streams instantiation metadata (N)
DATA_ONLY import only data (N)
VOLSIZE number of bytes in file on each volume of a file on tape
The following keywords only apply to transportable tablespaces
TRANSPORT_TABLESPACE import transportable tablespace metadata (N)
TABLESPACES tablespaces to be transported into database
DATAFILES datafiles to be transported into database
TTS_OWNERS users that own data in the transportable tablespace set
以上属性个别比较好使的:
tables=(table1,table2)
query=\”where docid =100\” 或者 query=’where docid =100’ 或者 query=’’where docid =100’’
其他类似。
2、对于expdp/impdp相关资料如下:
A服务器: 首先进入sqlplus创建一个目录:
create or replace directory expidras ‘/tmp';
给用户授权对目录的权限;
grant read,write ondirectory expdir to users;
然后exit在$里面导出scott用户对象
expdp username/password@ip/sid dumpfile=140423.dmp directory=expdir schemas=username
B服务器: impdp username/password@ip/sid dumpfile=140423.dmp directory=dump_file SCHEMAS=username logfile=import.log cluster=N
这样用户名为username的数据就算是导入到了B服务器里面去了。
第一次在导数据的时候出现了一个问题:
ORA-31693: Table data object "" failed to load/unload and is being skipped due to error:
ORA-31640: unable to open dump file "/tmp/140423.dmp" for read
ORA-19505: failed to identify file "/tmp/140423.dmp"
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
查找了许多资料看到:11g R2的IMPDP 增加了一个参数设置:CLUSTER,在设置了parallel参数>1的情况下, 可以支持多个节点的同时导入工作.默认的值是y。只要改回来就咩有问题了。
一些小结总结下:1、 expdp help=y
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
The Data Pump export utility provides a mechanism for transferring data objects
between Oracle databases. The utility is invoked with the following command:
Example: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
You can control how Export runs by entering the 'expdp' command followed
by various parameters. To specify parameters, you use keywords:
Format: expdp KEYWORD=value or KEYWORD=(value1,value2,...,valueN)
Example: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scott
or TABLES=(T1:P1,T1:P2), if T1 is partitioned table
USERID must be the first parameter on the command line.
------------------------------------------------------------------------------
The available keywords and their descriptions follow. Default values are listed within square brackets.
ATTACH
(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
指定dump文件和日志文件所在的目录,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS 目录。
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
先在对应的位置创建物理文件夹,如D:/backup
建立目录并授予相应用户对目录的读写权限:
SQL> create or replace directory backup as ‘d:/backup’;
SQL> grant read,write on directory backup to SYSTEM;
(4) DUMPFILE
用于指定dump文件的名称,默认名称为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
该选项用于指定执行操作时要排除对象类型或相关对象
EXCLUDE=object_type[:name_clause] [,….]
Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE和INCLUDE不能同时使用。
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
(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-YYYY HH24:MI:SS’)”
(11). FULL
指定数据库模式导出,默认为N。 FULL={Y | N} 。为Y时,标识执行数据库导出.
(12). HELP
指定是否显示EXPDP命令行选项的帮助信息,默认为N。当设置为Y时,会显示导出选项的帮助信息. Expdp help=y
(13). INCLUDE
指定导出时要包含的对象类型及相关对象。INCLUDE = object_type[:name_clause] [,… ]
(14). JOB_NAME
指定要导出作用的名称,默认为SYS_XXX 。JOB_NAME=jobname_string
(15). LOGFILE
指定导出日志文件的名称,默认名称为export.log
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
指定数据库链接名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.
(17). NOLOGFILE
该选项用于指定禁止生成导出日志文件,默认值为N.
(18). PARALLEL
指定执行导出操作的并行进程个数,默认值为1
(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
该方案用于指定执行方案模式导出,默认为当前用户方案.
(22). STATUS
指定显示导出作用进程的详细状态,默认值为0
(23). TABLES
指定表模式导出
TABLES=[schema_name.]table_name[:partition_name][,…]
Schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.
(24). TABLESPACES
指定要导出表空间列表
(25). TRANSPORT_FULL_CHECK
该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N. 当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.当设置为N时,导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.
(26). TRANSPORT_TABLESPACES
指定执行表空间模式导出
(27). VERSION
指定被导出对象的数据库版本,默认值为COMPATIBLE.
VERSION={COMPATIBLE | LATEST | version_string}
为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.
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 | FRPLACE }
当设置该选项为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’
转自:http://mmxiong.blog.163.com/blog/static/20613301120123244463983/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26773184/viewspace-1148419/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26773184/viewspace-1148419/