expdp导出 schema_windows下使用expdp和impdp命令导出及导入oracle数据

本篇测试在windows下使用expdp命令导出oracle数据库中SCOTT用户所有表,并创建一个新的表空间和用户,使用impdp命令将数据导入到此用户下。

测试环境:

OS: Windows7_X64 旗舰版

DB: Oracle11gR2_X64

1

2

OS:Windows7_X64旗舰版

DB:Oracle11gR2_X64

首先我们启用SCOTT用户(为SCOTT用户解锁并设置密码):

ALTER USER SCOTT ACCOUNT UNLOCK;

ALTER USER SCOTT IDENTIFIED BY SCOTT;

1

2

ALTERUSERSCOTTACCOUNTUNLOCK;

ALTERUSERSCOTTIDENTIFIEDBYSCOTT;

一、使用expdp命令导出SCOTT用户所有表

1.1、在windows系统上创建一个目录,用于存放导出的dmp文件

例如:我在C盘创建了C:\app\dump_dir目录

1.2、在oracle中创建一个directory(目录和刚才windows创建路径要一致,别名为dump_dir),并授权读写目录权限给到SCOTT用户

create directory dump_dir as 'C:\app\dump_dir';

grant read,write on directory dump_dir TO SCOTT;

1

2

createdirectorydump_diras'C:\app\dump_dir';

grantread,writeondirectorydump_dirTOSCOTT;

查询创建好的目录:

select * from dba_directories;

1

select *fromdba_directories;

1.3、查询下SCOTT用户的所有表和视图

select * from all_tab_comments where owner='SCOTT';

1

select *fromall_tab_commentswhereowner='SCOTT';

1.4、使用expdp导出SCOTT用户所有表

C:\Users\ZCY>expdp SCOTT/SCOTT DIRECTORY=DUMP_DIR schemas=SCOTT DUMPFILE=scott_20181125.dmp

Export: Release 11.2.0.1.0 - Production on 星期日 11月 25 17:34:00 2018

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

启动 "SCOTT"."SYS_EXPORT_SCHEMA_01": SCOTT/******** DIRECTORY=DUMP_DIR schemas=SCOTT DUMPFILE=scott_20181125.dmp

正在使用 BLOCKS 方法进行估计...

处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA

使用 BLOCKS 方法的总估计: 192 KB

处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA

处理对象类型 SCHEMA_EXPORT/TABLE/TABLE

处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX

处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS

处理对象类型 SCHEMA_EXPORT/TABLE/COMMENT

处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

. . 导出了 "SCOTT"."DEPT" 5.937 KB 4 行

. . 导出了 "SCOTT"."EMP" 8.570 KB 14 行

. . 导出了 "SCOTT"."SALGRADE" 5.867 KB 5 行

. . 导出了 "SCOTT"."BONUS" 0 KB 0 行

已成功加载/卸载了主表 "SCOTT"."SYS_EXPORT_SCHEMA_01"

******************************************************************************

SCOTT.SYS_EXPORT_SCHEMA_01 的转储文件集为:

C:\APP\DUMP_DIR\SCOTT_20181125.DMP

作业 "SCOTT"."SYS_EXPORT_SCHEMA_01" 已于 17:35:06 成功完成

C:\Users\ZCY>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

C:\Users\ZCY>expdpSCOTT/SCOTTDIRECTORY=DUMP_DIRschemas=SCOTTDUMPFILE=scott_20181125.dmp

Export:Release11.2.0.1.0-Productionon星期日11月2517:34:002018

Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.

连接到:OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-Production

WiththePartitioning,OLAP,DataMiningandRealApplicationTestingoptions

启动"SCOTT"."SYS_EXPORT_SCHEMA_01":SCOTT/********DIRECTORY=DUMP_DIRschemas=SCOTTDUMPFILE=scott_20181125.dmp

正在使用BLOCKS方法进行估计...

处理对象类型SCHEMA_EXPORT/TABLE/TABLE_DATA

使用BLOCKS方法的总估计:192KB

处理对象类型SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA

处理对象类型SCHEMA_EXPORT/TABLE/TABLE

处理对象类型SCHEMA_EXPORT/TABLE/INDEX/INDEX

处理对象类型SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

处理对象类型SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS

处理对象类型SCHEMA_EXPORT/TABLE/COMMENT

处理对象类型SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

..导出了"SCOTT"."DEPT"5.937KB4行

..导出了"SCOTT"."EMP"8.570KB14行

..导出了"SCOTT"."SALGRADE"5.867KB5行

..导出了"SCOTT"."BONUS"0KB0行

已成功加载/卸载了主表"SCOTT"."SYS_EXPORT_SCHEMA_01"

******************************************************************************

SCOTT.SYS_EXPORT_SCHEMA_01的转储文件集为:

C:\APP\DUMP_DIR\SCOTT_20181125.DMP

作业"SCOTT"."SYS_EXPORT_SCHEMA_01"已于17:35:06成功完成

C:\Users\ZCY>

命令解释:

expdp SCOTT/SCOTT directory=dump_dir schemas=SCOTT dumpfile=scott_20181125.dmp

expdp: 导出使用命令。

SCOTT/SCOTT: 指定导出数据时用来登录数据库的用户名和密码。

directory=dump_dir: 指定使用的目录

schemas=SCOTT: 指定导出SCOTT用户表

dumpfile=scott_20181125.dmp: 指定导出dmp文件名称

1.5、查看windows相应目录下导出的dump数据和日志文件

二、创建一个新的表空间和用户

2.1、首先查看下当前的数据文件路径

select * from dba_data_files;

1

select *fromdba_data_files;

2.2、根据上面查出来的数据文件存储位置,创建一个名为test的表空间。

create tablespace test datafile 'C:\APP\ZCY\ORADATA\IMZCY\TEST.DBF' SIZE 200m AUTOEXTEND ON next 20m;

1

createtablespacetestdatafile'C:\APP\ZCY\ORADATA\IMZCY\TEST.DBF'SIZE200mAUTOEXTENDONnext20m;

2.3、创建名为test的用户并授权

create user test identified by test default tablespace test quota unlimited on test;

grant connect,resource,dba,JAVASYSPRIV to test;

1

2

createusertestidentifiedbytestdefaulttablespacetestquotaunlimitedontest;

grantconnect,resource,dba,JAVASYSPRIVtotest;

三、使用expdp命令导入刚才导出的dup文件到test用户下

3.1、首先查询下SCOTT用户的表都是存在哪个表空间里面的,等下使用expdp命令时需要指定

3.1.1 普通用户查看自己所有表的表名和表空间名

select table_name 表名 ,tablespace_name 表空间名 from user_tables;

3.1.2 sys用户查询其他用户所有表及使用表空间名

select table_name 表名 , tablespace_name 表空间名 from all_tables where owner='SCOTT';

1

2

3

4

5

6

3.1.1普通用户查看自己所有表的表名和表空间名

selecttable_name表名,tablespace_name表空间名fromuser_tables;

3.1.2sys用户查询其他用户所有表及使用表空间名

selecttable_name表名,tablespace_name表空间名fromall_tableswhereowner='SCOTT';

3.2 使用impdp导入dmp文件数据给到test用户

C:\Users\ZCY>impdp test/test remap_schema=SCOTT:test remap_tablespace=USERS:test dumpfile=SCOTT_20181125.DMP directory=dump_dir transform=oid:n

Import: Release 11.2.0.1.0 - Production on 星期一 11月 26 13:21:53 2018

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

已成功加载/卸载了主表 "TEST"."SYS_IMPORT_FULL_01"

启动 "TEST"."SYS_IMPORT_FULL_01": test/******** remap_schema=SCOTT:test remap_t

ablespace=users:test dumpfile=SCOTT_20181125.DMP directory=dump_dir transform=oi

d:n

处理对象类型 SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA

处理对象类型 SCHEMA_EXPORT/TABLE/TABLE

处理对象类型 SCHEMA_EXPORT/TABLE/TABLE_DATA

. . 导入了 "TEST"."DEPT" 5.937 KB 4 行

. . 导入了 "TEST"."EMP" 8.570 KB 14 行

. . 导入了 "TEST"."SALGRADE" 5.867 KB 5 行

. . 导入了 "TEST"."BONUS" 0 KB 0 行

处理对象类型 SCHEMA_EXPORT/TABLE/INDEX/INDEX

处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

处理对象类型 SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

作业 "TEST"."SYS_IMPORT_FULL_01" 已于 13:22:01 成功完成

C:\Users\ZCY>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

C:\Users\ZCY>impdptest/testremap_schema=SCOTT:testremap_tablespace=USERS:testdumpfile=SCOTT_20181125.DMPdirectory=dump_dirtransform=oid:n

Import:Release11.2.0.1.0-Productionon星期一11月2613:21:532018

Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.

连接到:OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-Production

WiththePartitioning,OLAP,DataMiningandRealApplicationTestingoptions

已成功加载/卸载了主表"TEST"."SYS_IMPORT_FULL_01"

启动"TEST"."SYS_IMPORT_FULL_01":test/********remap_schema=SCOTT:testremap_t

ablespace=users:testdumpfile=SCOTT_20181125.DMPdirectory=dump_dirtransform=oi

d:n

处理对象类型SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA

处理对象类型SCHEMA_EXPORT/TABLE/TABLE

处理对象类型SCHEMA_EXPORT/TABLE/TABLE_DATA

..导入了"TEST"."DEPT"5.937KB4行

..导入了"TEST"."EMP"8.570KB14行

..导入了"TEST"."SALGRADE"5.867KB5行

..导入了"TEST"."BONUS"0KB0行

处理对象类型SCHEMA_EXPORT/TABLE/INDEX/INDEX

处理对象类型SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

处理对象类型SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

作业"TEST"."SYS_IMPORT_FULL_01"已于13:22:01成功完成

C:\Users\ZCY>

命令解释:

impdp test/test remap_schema=SCOTT:test remap_tablespace=USERS:test dumpfile=SCOTT_20181125.DMP directory=dump_dir transform=oid:n

impdp:导入使用命令

test/test:指定导入时连接数据库的用户名密码

remap_schema:指定该dmp文件导出时的用户名和将要导入的用户,以:分割。

remap_tablespace:指定该dmp文件导出时的表空间和将要导入的表空间,以:分割。

dumpfile:指定要导入的dmp文件

directory:指定使用的目录(dmp文件提前放到这个目录)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值