oracle 11g expdp impdp详细使用方法

11G中有个新特性,当表无数据时,不分配segment,以节省空间

解决方法如下图:

二、oracle10g以后提供了expdp/impdp工具,同样可以解决此问题

1、导出expdp工具使用方法:

首先建立directory -- expdir(导入导出都要建立,对应的E:/exp文件夹如果不存在,需要手工建立)

导出语法:

如果只是要导出某些表,可以使用include


C:\Users\ganjh>expdp eas/kingdee@nskf_localhost schemas=eas dumpfile=expdp2.dmp
directory=expdir include=table:\"like \'CT%\'\"


2、导入impdp工具使用方法:

首先建立directory -- data_bak

导入语法:

C:\Users\ganjh>impdp eas/kingdee@nskf_localhost directory=db_bak dumpfile=EXPDP.
DMP FULL=y;


 

从一个用户expdp导出再impdp导入到另一个用户


如果想导入的用户已经存在:
1. 导出用户 expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp
2. 导入用户 impdp user2/pass2 directory=dumpdir dumpfile=user1.dmp REMAP_SCHEMA=user1:user2 EXCLUDE=USER full=y;

如果想导入的用户不存在:
1. 导出用户 expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp
2. 导入用户 impdp system/passsystem directory=dumpdir dumpfile=user1.dmp REMAP_SCHEMA=user1:user2 full=y;
3. user2会自动建立,其权限和使用的表空间与user1相同,但此时用user2无法登录,必须修改user2的密码


--------------------------------------------------------- linux环境 ---------------------------------------------------------------------

Oracle11g中,exp默认不能导出空表。用传统的exp,imp进行异构平台数据库迁移会比较麻烦。不过可以使用expdp、impdp进行迁移。

把64位windows 2003的Oracle11gR2数据库迁移到64位Linux redhat Enterprise 5中,可以使用expdp、impdp进行迁移数据。

如:Windows为A服务器,Linux为B服务器,数据库用户为test,把A服务器的数据迁移到B服务器中

在A服务器操作:

1、

SQL> create directory expdp_dir as 'D:\mzl\backup ';

SQL> grant read,write on directory expdp_dir to test;

 

2、在windows目录创建目录D:\mzl\backup

 

3、在DOS命令窗口导出:

expdp test/test DIRECTORY=expdp_dir DUMPFILE=test.dmp logfile=testexpdp.log

 

在B服务器中操作:

4、SQL> create directory impdp_dir as '/home/oracle/impdp_dir';

  SQL> grant read,write on directory impdp_dir to test;

 

 

1、 在系统中需要有/home/oracle/impdp_dir目录,在impdp_dir目录下必须有读写权限

(chmod 777 impdp_dir)

 

5、用ftp把A服务器导出的数据上传到B服务器的/home/oracle/impdp_dir目录中

 

在A服务器中配置好B服务器的服务器名,在A服务器导入数据

6、在DOS命令窗口导出:

imppdp test/test@B_database DIRECTORY=impdp_dir DUMPFILE=test.dmp logfile=testimpdp.log

(这里注意大小写,如果test.dmp在linux中为大写,必须更改为大写。Linux区分大小写)


create temporary tablespace EAS_T_NSKFTEST_STANDARD tempfile 'F:\oradata\oradata\orcltest\EAS_T_NSKFTEST_STANDARD' size 500M
autoextend on next 50M maxsize 2048M extent management local;

create tablespace EAS_D_NSKFTEST_STANDARD datafile 'F:\oradata\oradata\orcltest\EAS_D_NSKFTEST_STANDARD' size 2048M
autoextend on next 100M maxsize 5000M extent management local;

create temporary tablespace EAS_D_NSKFTEST_TEMP2 tempfile 'F:\oradata\oradata\orcltest\EAS_D_NSKFTEST_TEMP2' size 500M
autoextend on next 50M maxsize 2048M extent management local;

create user nskftest identified by kingdee default tablespace EAS_D_NSKFTEST_STANDARD temporary tablespace EAS_T_NSKFTEST_STANDARD;

grant connect,resource,dba to nskftest;

impdp nskftest/kingdee directory=db_bak dumpfile=XWY_SCHEMAS20150717.dmp REMAP_SCHEMA=nskf:nskftest remap_tablespace=EAS_D_NSKF_STANDARD:EAS_D_NSKFTEST_STANDARD remap_tablespace=EAS_T_NSKF_STANDARD:EAS_T_NSKFTEST_STANDARD remap_tablespace=EAS_D_NSKF_TEMP2:EAS_D_NSKFTEST_TEMP2 EXCLUDE=USER full=y;


展开阅读全文
©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值