[转载]导入导出:impdp&expdp

标签:
转载 |
原文地址:导入导出:impdp&expdp作者:oraclexu
官方文档中的data pump
http://s9/mw690/001E9Yqity6HcrzTFtm58&690
使用expdp导出的文件是一个二进制的文件,里面包含表等数据,,以及一些控制信息,元数据信息等。
expdp是在server端进行写数据。
1.在使用expdp之前是首先需要在服务器端创建一个导出文件的 保存目录:
SQL> conn /as sysdba
已连接。
SQL> create directory dump_dir as 'E:dump_dir';
目录已创建。
SQL> GRANT READ, WRITE ON DIRECTORY dump_dir to test;
授权成功。
语法:
expdp username/password [@ connect_string][as sysdba] expmodes expopts expfileopts
attach=[schema.]job_name[encryption_password=password];
expmodes:
1) FULL=YES|NO
使用该模式时需要有
表示导出整个数据库,
a.在full模式下不会导出系统schema,比如sys,ordsys,mdsys
b.Grants on objects owned by the
EXAMPLE:
查看权限:
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
导出test schema的full数据:
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir dumpf
ile=testfull.dmp FULL='YES'
Export: Release 11.2.0.3.0 - Production on 星期二 3月 11 13:29:45 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31631: 需要权限
ORA-39161: 完整数据库作业需要权限
授予权限:
SQL> GRANT DATAPUMP_EXP_FULL_DATABASE TO TEST;
授权成功。
重新导出:
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir dumpf
ile=testfull.dmp FULL='YES' REUSE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期二 3月 11 13:59:38 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights
reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "TEST"."SYS_EXPORT_FULL_01": test/********
directory=dump_dir dumpfile=tes
tfull.dmp FULL='YES' REUSE_DUMPFILES='YES'
正在使用 BLOCKS 方法进行估计...
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 373.6 MB
处理对象类型 DATABASE_EXPORT/TABLESPACE
处理对象类型 DATABASE_EXPORT/PROFILE
处理对象类型 DATABASE_EXPORT/SYS_USER/USER
处理对象类型 DATABASE_EXPORT/SCHEMA/USER
处理对象类型 DATABASE_EXPORT/ROLE
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/ROLE_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
处理对象类型 DATABASE_EXPORT/RESOURCE_COST
处理对象类型 DATABASE_EXPORT/TRUSTED_DB_LINK
处理对象类型 DATABASE_EXPORT/SCHEMA/SEQUENCE/SEQUENCE
处理对象类型 DATABASE_EXPORT/SCHEMA/SEQUENCE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/DIRECTORY/DIRECTORY
处理对象类型 DATABASE_EXPORT/DIRECTORY/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/CONTEXT
.........
2)SCHEMAS=schema_name1,schema_name2,.....
导出多个schema,不能导出sys schema。
如果没有DATADUMP_EXP_FULL_DATABASE角色权限,则仅能备份自己的schema,否则可以备份任意的schema。
3)TABLES=schema_name1.table_name,schema2.table_name:partition_name,.....
导出多个表,如果有datadump_exp_full_database角色则可以导出多个schema上的表,否则只能导出自己schema上的表。
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir table
s=test1,emp,dept,test3 dumpfile=testtable.dmp REUSE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期三 3月 12 09:15:55 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "TEST"."SYS_EXPORT_TABLE_01": test/********
directory=dump_dir tables=test
1,emp,dept,test3 dumpfile=testtable.dmp REUSE_DUMPFILES='YES'
正在使用 BLOCKS 方法进行估计...
处理对象类型 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 256 KB
处理对象类型 TABLE_EXPORT/TABLE/TABLE
处理对象类型 TABLE_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX
处理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
处理对象类型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
. . 导出了 "TEST"."DEPT"
5.414
KB
2 行
. . 导出了 "TEST"."EMP"
5.835
KB
3 行
. . 导出了 "TEST"."TEST1"
5.835
KB
2 行
. . 导出了 "TEST"."TEST3"
5.835
KB
2 行
已成功加载/卸载了主表 "TEST"."SYS_EXPORT_TABLE_01"
******************************************************************************
TEST.SYS_EXPORT_TABLE_01 的转储文件集为:
E:DUMP_DIRTESTTABLE.DMP
作业 "TEST"."SYS_EXPORT_TABLE_01" 已于 09:16:13 成功完成
4)TABLESPACE=tablespace_name1,tablespace_name2,.....
5)transport_tablespace=tablespace_name1,tablespace_name2,...[TRANSPORT_FULL_CHECK=YES|NO]
expopts:
1)COMPRESSION=ALL|DATA_ONLY|METADATA_ONLY|NONE
压缩数据
2)CONTENT=ALL|DATA_ONLY|METADATA_ONLY
设置导出的数据,dataonly仅导出数据,metadata_only只导出对象定义
3)DATA_OPTIONS=XML_CLOB
4)ESTIMATE=BOLCKS|STATISTICS
计算作业估计值, 其中有效关键字为:(当使用BLOCKS时oracle用导出对象 blocks*块尺寸算估计占用导出空间,statistics时用统计信息估算)
5)ESTIMATE_ONLY=YES|NO
在不执行导出的情况下计算作业估计值。(N|Y 默认N ,Y时候是估导出作业占 用空间而不实际导出)
6)FLASHBACK_SCN=scn_name
用于将会话快照设置回以前状态的 SCN。
7)FLASHBACK_TIME=timestamp
用于获取最接近指定时间的 SCN 的时间。
8)JOB_NAME=job_name
要创建的导出作业的名称。
9)NETWORK_LINK=database_link
链接到源系统的远程数据库的名称。
10)PARALEEL=integer
更改当前作业的活动 worker 的数目。 PARALLEL=
11)SOURCE_EDITION=source_edition_name
12)STATUS=integer
在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。
13)TRANSPORTABLE=ALWAYS|NEVER
该模式仅能在导出tables有用;
使用该模式时用户需要有
impdp system PARTITION_OPTIONS=DEPARTITION TRANSPORT_DATAFILES=oracle/dbs/tbs2 DIRECTORY=dpump_dir1 DUMPFILE=tto1.dmp REMAP_SCHEMA=sh:dp
整个是设置数据库的编译版本的,默认是COMPATIBLE
15)expdiagnostics
16)expremap
17)expracopt
18)exp encrypt
19)expfilter
expfileopts:
1)DIRECTORY=directory_object
2)DUMPFILE=[directory_object:]file_name,....
3)FILESIZE=number_of_bytes
4)LOGFILE=[directory_object:]file_name
5)NOLOGFILE=YES|NO
6)PARAFILE=directory_path:file_name
7)REUSE_DUMPFILES=YES|NO是否当dumpfile已经存在是覆盖,如果设置为no,则已经存在该名字的dump文件会 报错
attach=[schema.]job_name[encryption_password=password];
impmodes:
1)FULL=YES|NO
example 1:使用会普通用户导入
C:Documents and SettingsAdministrator>impdp test1/test directory=dump_dir
dumpfile=testfull.dmp FULL='YES' logfile=impfull.log
Import: Release 11.2.0.3.0 - Production on 星期三 3月 12 13:52:08 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31655: 尚未为作业选择数据或元数据对象
ORA-39154: 外部方案中的对象已从导入中删除
已成功加载/卸载了主表 "TEST1"."SYS_IMPORT_FULL_01"
启动 "TEST1"."SYS_IMPORT_FULL_01": test1/********
directory=dump_dir dumpfile=t
estfull.dmp FULL='YES' logfile=impfull.log
作业 "TEST1"."SYS_IMPORT_FULL_01" 已于 13:52:25 成功完成
C:Documents and SettingsAdministrator>impdp test1/test directory=dump_dir
dumpfile=testfull.dmp FULL='YES' logfile=impfull.log remap_schema=test:test1
Import: Release 11.2.0.3.0 - Production on 星期三 3月 12 13:56:15 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39154: 外部方案中的对象已从导入中删除
已成功加载/卸载了主表 "TEST1"."SYS_IMPORT_FULL_01"
启动 "TEST1"."SYS_IMPORT_FULL_01": test1/********
directory=dump_dir dumpfile=t
estfull.dmp FULL='YES' logfile=impfull.log remap_schema=test:test1
处理对象类型 DATABASE_EXPORT/SCHEMA/USER
处理对象类型 DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/ROLE_GRANT
ORA-39083: 对象类型 ROLE_GRANT 创建失败, 出现错误:
ORA-31625: 必须有方案 SYSTEM 才能导入此对象, 但此方案不可访问
ORA-01031: 权限不足
失败的 sql 为:
GRANT "DATAPUMP_EXP_FULL_DATABASE" TO
"TEST1"
处理对象类型 DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
处理对象类型 DATABASE_EXPORT/SCHEMA/PROCACT_SCHEMA
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
. . 导入了 "TEST1"."DEPT"
5.414
KB
2 行
. . 导入了 "TEST1"."EMP"
5.835
KB
3 行
. . 导入了 "TEST1"."MONTHLY_ORDERS"
一.expdp使用expdp导出的文件是一个二进制的文件,里面包含表等数据,,以及一些控制信息,元数据信息等。
expdp是在server端进行写数据。
1.在使用expdp之前是首先需要在服务器端创建一个导出文件的 保存目录:
SQL> conn /as sysdba
已连接。
SQL> create directory dump_dir as 'E:dump_dir';
目录已创建。
SQL> GRANT READ, WRITE ON DIRECTORY dump_dir to test;
授权成功。
语法:
expdp username/password [@ connect_string][as sysdba] expmodes expopts expfileopts
attach=[schema.]job_name[encryption_password=password];
expmodes:
1) FULL=YES|NO
使用该模式时需要有
DATAPUMP_EXP_FULL_DATABASE
角色权限。表示导出整个数据库,
a.在full模式下不会导出系统schema,比如sys,ordsys,mdsys
b.Grants on objects owned by the
SYS
schema are never
exported.由sys用户授予的对象权限不能被导出EXAMPLE:
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
导出test schema的full数据:
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir dumpf
ile=testfull.dmp FULL='YES'
Export: Release 11.2.0.3.0 - Production on 星期二 3月 11 13:29:45 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31631: 需要权限
ORA-39161: 完整数据库作业需要权限
授予权限:
SQL> GRANT DATAPUMP_EXP_FULL_DATABASE TO TEST;
授权成功。
重新导出:
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir dumpf
ile=testfull.dmp FULL='YES' REUSE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期二 3月 11 13:59:38 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "TEST"."SYS_EXPORT_FULL_01":
tfull.dmp FULL='YES' REUSE_DUMPFILES='YES'
正在使用 BLOCKS 方法进行估计...
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 373.6 MB
处理对象类型 DATABASE_EXPORT/TABLESPACE
处理对象类型 DATABASE_EXPORT/PROFILE
处理对象类型 DATABASE_EXPORT/SYS_USER/USER
处理对象类型 DATABASE_EXPORT/SCHEMA/USER
处理对象类型 DATABASE_EXPORT/ROLE
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/ROLE_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
处理对象类型 DATABASE_EXPORT/RESOURCE_COST
处理对象类型 DATABASE_EXPORT/TRUSTED_DB_LINK
处理对象类型 DATABASE_EXPORT/SCHEMA/SEQUENCE/SEQUENCE
处理对象类型 DATABASE_EXPORT/SCHEMA/SEQUENCE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/DIRECTORY/DIRECTORY
处理对象类型 DATABASE_EXPORT/DIRECTORY/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/CONTEXT
.........
2)SCHEMAS=schema_name1,schema_name2,.....
导出多个schema,不能导出sys schema。
如果没有DATADUMP_EXP_FULL_DATABASE角色权限,则仅能备份自己的schema,否则可以备份任意的schema。
3)TABLES=schema_name1.table_name,schema2.table_name:partition_name,.....
导出多个表,如果有datadump_exp_full_database角色则可以导出多个schema上的表,否则只能导出自己schema上的表。
C:Documents and SettingsAdministrator>expdp test/test directory=dump_dir table
s=test1,emp,dept,test3 dumpfile=testtable.dmp REUSE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期三 3月 12 09:15:55 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
启动 "TEST"."SYS_EXPORT_TABLE_01":
1,emp,dept,test3 dumpfile=testtable.dmp REUSE_DUMPFILES='YES'
正在使用 BLOCKS 方法进行估计...
处理对象类型 TABLE_EXPORT/TABLE/TABLE_DATA
使用 BLOCKS 方法的总估计: 256 KB
处理对象类型 TABLE_EXPORT/TABLE/TABLE
处理对象类型 TABLE_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX
处理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
处理对象类型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
. . 导出了 "TEST"."DEPT"
. . 导出了 "TEST"."EMP"
. . 导出了 "TEST"."TEST1"
. . 导出了 "TEST"."TEST3"
已成功加载/卸载了主表 "TEST"."SYS_EXPORT_TABLE_01"
******************************************************************************
TEST.SYS_EXPORT_TABLE_01 的转储文件集为:
作业 "TEST"."SYS_EXPORT_TABLE_01" 已于 09:16:13 成功完成
4)TABLESPACE=tablespace_name1,tablespace_name2,.....
5)transport_tablespace=tablespace_name1,tablespace_name2,...[TRANSPORT_FULL_CHECK=YES|NO]
expopts:
1)COMPRESSION=ALL|DATA_ONLY|METADATA_ONLY|NONE
2)CONTENT=ALL|DATA_ONLY|METADATA_ONLY
设置导出的数据,dataonly仅导出数据,metadata_only只导出对象定义
3)DATA_OPTIONS=XML_CLOB
4)ESTIMATE=BOLCKS|STATISTICS
计算作业估计值, 其中有效关键字为:(当使用BLOCKS时oracle用导出对象 blocks*块尺寸算估计占用导出空间,statistics时用统计信息估算)
5)ESTIMATE_ONLY=YES|NO
在不执行导出的情况下计算作业估计值。(N|Y 默认N ,Y时候是估导出作业占 用空间而不实际导出)
6)FLASHBACK_SCN=scn_name
用于将会话快照设置回以前状态的 SCN。
7)FLASHBACK_TIME=timestamp
用于获取最接近指定时间的 SCN 的时间。
8)JOB_NAME=job_name
要创建的导出作业的名称。
9)NETWORK_LINK=database_link
链接到源系统的远程数据库的名称。
10)PARALEEL=integer
更改当前作业的活动 worker 的数目。 PARALLEL=
11)SOURCE_EDITION=source_edition_name
12)STATUS=integer
在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。
13)TRANSPORTABLE=ALWAYS|NEVER
该模式仅能在导出tables有用;
使用该模式时用户需要有
DATAPUMP_EXP_FULL_DATABASE权限;
到导出的表所在的表空间必须处于read only状态下;
该模式仅在11.0.0以上的版本才可使用;
如果表是一个分区表,则导出之后会去掉分区表整个属性在导入的时候需要使用如下的语句:
impdp system PARTITION_OPTIONS=DEPARTITION TRANSPORT_DATAFILES=oracle/dbs/tbs2 DIRECTORY=dpump_dir1 DUMPFILE=tto1.dmp REMAP_SCHEMA=sh:dp
使用该模式不会备份数据,需要将对应的数据文件复制到目标机器才会有数据。
C:Documents and SettingsAdministrator>expdp test/test
directory=dump_dir table
s=test1,emp,dept,test3 dumpfile=testtable_transport.dmp
transportable=always REU
SE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期三 3月 12 09:18:15
2014
Copyright (c) 1982, 2011, Oracle and/or its
affiliates. All rights reserved.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 -
Production
With the Partitioning, OLAP, Data Mining and Real Application
Testing options
启动 "TEST"."SYS_EXPORT_TABLE_01": test/********
directory=dump_dir tables=test
1,emp,dept,test3 dumpfile=testtable_transport.dmp
transportable=always REUSE_DUM
PFILES='YES'
ORA-39123: 数据泵可传输的表空间作业中止
ORA-39185: 可传输表空间故障列表是
ORA-29335: 表空间 'TEST' 不为只读
作业 "TEST"."SYS_EXPORT_TABLE_01" 因致命错误于 09:18:19 停止
设置为readonly
SQL> alter tablespace test read only;
表空间已更改。
设置为test 表空间read
only不可以导出,创建不了一个记录导出集合的临时表。
SQL> alter tablespace test read write;
表空间已更改。
SQL> conn test/test
已连接。
SQL> alter table test1 read only;
表已更改。
SQL> alter table emp read only;
表已更改。
SQL> alter table dept read only;
表已更改。
SQL> alter table test3 read only;
表已更改。
表设置为read
only还是不行,所以还是应该将对应的表空间设置为read only才行。
使用其他的用户来导出test下的表就可以了,将test表空间还是设置为read
only。
C:Documents and SettingsAdministrator>expdp system/test
directory=dump_dir
tables=test.test1,test.emp,test.dept,test.test3
dumpfile=testtable_transport.dm
p transportable=always REUSE_DUMPFILES='YES'
Export: Release 11.2.0.3.0 - Production on 星期三 3月 12 09:36:02
2014
Copyright (c) 1982, 2011, Oracle and/or its
affiliates. All rights reserved.
UDE-28002: 操作产生了 ORACLE 错误 28002
ORA-28002: 7 天之后口令将过期
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 -
Production
With the Partitioning, OLAP, Data Mining and Real Application
Testing options
启动 "SYSTEM"."SYS_EXPORT_TABLE_01":
system/******** directory=dump_dir tables=
test.test1,test.emp,test.dept,test.test3
dumpfile=testtable_transport.dmp transp
ortable=always REUSE_DUMPFILES='YES'
处理对象类型 TABLE_EXPORT/TABLE/PLUGTS_BLK
处理对象类型 TABLE_EXPORT/TABLE/TABLE
处理对象类型 TABLE_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/INDEX
处理对象类型 TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
处理对象类型 TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
处理对象类型 TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
处理对象类型 TABLE_EXPORT/TABLE/END_PLUGTS_BLK
已成功加载/卸载了主表 "SYSTEM"."SYS_EXPORT_TABLE_01"
******************************************************************************
SYSTEM.SYS_EXPORT_TABLE_01 的转储文件集为:
E:DUMP_DIRTESTTABLE_TRANSPORT.DMP
******************************************************************************
可传输表空间 TEST 所需的数据文件:
E:APPADMINISTRATORORADATAORCLTEST.DBF
作业 "SYSTEM"."SYS_EXPORT_TABLE_01" 已于 09:36:10 成功完成
使用该模式导出的数据需要使用如下的导入语句:
14)VERSION=COMPATIBLE|LATEST|version_string整个是设置数据库的编译版本的,默认是COMPATIBLE
15)expdiagnostics
16)expremap
17)expracopt
18)exp encrypt
19)expfilter
expfileopts:
1)DIRECTORY=directory_object
2)DUMPFILE=[directory_object:]file_name,....
3)FILESIZE=number_of_bytes
4)LOGFILE=[directory_object:]file_name
5)NOLOGFILE=YES|NO
6)PARAFILE=directory_path:file_name
7)REUSE_DUMPFILES=YES|NO是否当dumpfile已经存在是覆盖,如果设置为no,则已经存在该名字的dump文件会 报错
二.impdp
impdp将导出的dump文件导入到目标数据库中,impdp也可以不通过中间的deump文件直接将数据从一个数据库导入到另一个数据库(这种方式叫做网络导入)。
对于使用impdp的用户需要有读写目录的权限,需要写日志和读取dump文件,该用户还需要有对表空间的读写权限。
导入准备工作:
SQL> alter user test1 default tablespace test;
用户已更改。
SQL> alter user test1 quota unlimited on test;
用户已更改。
SQL> grant read on directory dump_dir to test1;
授权成功。
SQL> GRANT READ ON DIRECTORY dump_dir to test1;
授权成功。
SQL> GRANT write ON DIRECTORY dump_dir to test1;
impdp语法:
impdp
username/password [@ connect_string][as sysdba] impmodes impopts
impfileoptsattach=[schema.]job_name[encryption_password=password];
impmodes:
1)FULL=YES|NO
example 1:使用会普通用户导入
C:Documents and SettingsAdministrator>impdp test1/test directory=dump_dir
dumpfile=testfull.dmp FULL='YES' logfile=impfull.log
Import: Release 11.2.0.3.0 - Production on 星期三 3月 12 13:52:08 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31655: 尚未为作业选择数据或元数据对象
ORA-39154: 外部方案中的对象已从导入中删除
已成功加载/卸载了主表 "TEST1"."SYS_IMPORT_FULL_01"
启动 "TEST1"."SYS_IMPORT_FULL_01":
estfull.dmp FULL='YES' logfile=impfull.log
作业 "TEST1"."SYS_IMPORT_FULL_01" 已于 13:52:25 成功完成
C:Documents and SettingsAdministrator>impdp test1/test directory=dump_dir
dumpfile=testfull.dmp FULL='YES' logfile=impfull.log remap_schema=test:test1
Import: Release 11.2.0.3.0 - Production on 星期三 3月 12 13:56:15 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39154: 外部方案中的对象已从导入中删除
已成功加载/卸载了主表 "TEST1"."SYS_IMPORT_FULL_01"
启动 "TEST1"."SYS_IMPORT_FULL_01":
estfull.dmp FULL='YES' logfile=impfull.log remap_schema=test:test1
处理对象类型 DATABASE_EXPORT/SCHEMA/USER
处理对象类型 DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/ROLE_GRANT
ORA-39083: 对象类型 ROLE_GRANT 创建失败, 出现错误:
ORA-31625: 必须有方案 SYSTEM 才能导入此对象, 但此方案不可访问
ORA-01031: 权限不足
失败的 sql 为:
处理对象类型 DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
处理对象类型 DATABASE_EXPORT/SCHEMA/PROCACT_SCHEMA
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
. . 导入了 "TEST1"."DEPT"
. . 导入了 "TEST1"."EMP"
. . 导入了 "TEST1"."MONTHLY_ORDERS"