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区分大小写)
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;
oracle 11g expdp impdp详细使用方法的更多相关文章
- Oracle使用expdp/impdp迁移数据
Oracle使用expdp/impdp迁移数据 1.#以下步骤在开发库执行(expdp导出) 一.创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建. sqlplus / ...
- expdp/impdp 详细参数解释
任意可以使用expdp/impdp的环境,都可以通过help=y看到帮助文档. 1.expdp参数说明 2.impdp参数说明 3.expdp参数说明(中文) 4.impdp参数说明(中文) expd ...
- ORACLE 11G EXPDP交互模式 interactive mode
expdp导出工具可以实现在导出任务执行过程中修改并行度.终止.监控任务功能. 做实验验证一下: [oracle@test dpdump]$ expdp system/password directo ...
- 解决oracle 11g 导出空表的方法
ORACLE 11G中有个新特性,当表无数据时,不分配segment,以节省空间. 解决方法: 1)insert一行,再rollback就产生segment了 该方法是在在空表中插入数据,再删除,则产 ...
- Oracle 11g的安装详细过程
本次采用的电脑为win10 专业版,以下为本人电脑的配置情况: 本人是第一次在win10系统上面进行oracle 11g的安装. 以下为安装步骤: 一.下载软件包 以下为各种oracle安装包的下载网 ...
- Oracle 11g EM删除重建的方法
虚拟机里的Oracle 11g好长时间没用了,突然打开之后发现EM无法访问了,EM可以重建,于是也不打算查找原因了,直接使大招 OS:Windows Server 2012 Oracle:11g R2 ...
- [转]oracle pump expdp impdp使用
用expdp或impdp命令时, 可暂不指出用户名/密码@实例名 as 身份, 然后根据提示再输入, 如: expdp schemas=scott DIRECTORY=dpdata dum ...
- ORACLE 11G EXP导出空表方法
EXP在导出11G的库的时候,与过去10G,9I的版本有很大的差别. 就是没有数据的表是不会分配空间的. 从Oracle 11.2.0.1版本开始,Oracle又提供了一种新的空间分配方法: Crea ...
- Oracle使用expdp/impdp导出导入数据
这里假设已存在数据库用户,并是计划通过该用户导入导出该用户表空间上的数据.(我们这里假定用户名称为ls) 1.创建逻辑目录(数据库命令,sqlplus中执行) Oracle不能直接指定系统目录让他去读 ...
随机推荐
- spring boot 系统启动时运行代码(1)-@PostConstruct
Application.java import org.springframework.boot.SpringApplication; import org.springframework.boot. ...
- python模块之openpyxl扩展
主要是对openpyxl扩展进行扩展,使用归类等 1. 安装 pip install openpyxl 想要在文件中插入图片文件,需要安装pillow,安装文件:PIL-fork-1.1.7.win- ...
- linux 文件 s 权限
s权限的作用:表示对文件具用可执行权限的用户将使用文件拥有者的权限或文件拥有者所在组的权限在对文件进行执行. s权限的设置:4,用户拥有者的执行权限位, 6,用户组的执行权限位, 2, 两者都设置, ...
- 使用cucumber & selenium实现一个简单的bddtest
1.Cucumber介绍 + feature : read requirement +scenario : testing situation,including + Given/ + when/ + ...
- awk, sed, xargs, bash
http://ryanstutorials.net/ awk: split($1, arr, “\t”) sed: sed -n '42p' file sed '42d' file sed ' ...
- leetcode 181 Employees Earning More Than Their Managers 不会分析的数据库复杂度
https://leetcode.com/problems/employees-earning-more-than-their-managers/description/ 老师上课没分析这些的复杂度, ...
- Django重新整理4---ModelForm-set(批量处理数据)
1. #引用modelformset from django.forms.models import modelformset_factory #必须继承forms.ModelForm! class ...
- IA-32e架构下的内核初始化内存管理
初级内存管理单元 关于内存的分页 以往的物理页是按照4KB进行分配和管理的, 而在Linux之后流行的就是2MB大小的物理页的分配和管理, 整个物理内存管理单元也是2MB物理页管理的 先获取基本的物理 ...
- 学习JVM-GC原理
1. 前言 Java和C++之间显著的一个区别就是对内存的管理.和C++把内存管理的权利赋予给开发人员的方式不同,Java拥有一套自动的内存回收系统(Garbage Collection,GC)简称G ...
- 祝高二学弟学妹AK NOIp2018!!!!!!