专栏首页HUC思梦的java专栏Oracle数据泵的导入和导出

Oracle数据泵的导入和导出

前言

今天王子要分享的内容是关于Oracle的一个实战内容,Oracle的数据泵。

网上有很多关于此的内容,但很多都是复制粘贴别人的,导致很多小伙伴想要使用的时候不能直接上手,所以这篇文章一定能让你更清晰的理解数据泵。

开始之前王子先介绍一下自己的环境,这里使用的是比较常用的WIN10系统,Oracle数据库也是安装在本机上的,环境比较简单。

数据泵的导入

导入的数据文件可能是别人导出给你的,也可能是你自己导出的,王子这里就是别人导出的,文件名字是YD.DMP。

在进行操作之前,一定要问清楚表空间名字,如果表空间命名不统一,可能会导致导入失败的问题。

所以第一步就是建立表空间,语句如下:

create tablespace VIEWHIGH
datafile 'D:/app/admin/oradata/orcl/VIEWHIGH' 
size 1M autoextend on next 50M maxsize unlimited;

这里的datafile路径一般选择你本地oracle的数据文件路径。

之后,我们可以建立一个新的用户来导入数据用,这个用户名也可以提前问好,最好用户名一致,否则需要做一次用户名的映射,这个我们下文再说。

建立用户语句如下:

create user DRGS_INIT
  identified by "vhiadsh"
  default tablespace VIEWHIGH 
  profile DEFAULT
  ACCOUNT UNLOCK;

建立用户后需要给用户授权,语句如下:

--给新建用户授DBA权限
grant dba to DRGS_INIT;
grant unlimited tablespace to DRGS_INIT;

接下来我们需要在本地的磁盘中创建一个文件夹,作为数据泵文件夹来使用,同时把DMP文件放入到此文件夹下。

之后使用如下语句创建数据泵:

create directory data_dir as '/usr/oracle' ;-- 注意:windows 路径为反斜杠:c:\oracle

这里的data_dir是我们自定义的名字,导入的时候与它一致即可。

之后就是导入操作了,注意,导入的命令不属于sql哦,打开本地的CMD命令行,输入如下语句即可:

impdp drgs_init/vhiadsh@192.168.1.188/orcl directory=data_dir dumpfile=YD.DMP REMAP_SCHEMA=viewhigh:drgs_init
 EXCLUDE=USER logfile=expdp.log

接下来对这条语句做一下解释。

前边就是正常的用户名/密码和oracle数据库地址,directory指定的就是我们自定义的data_dir,dumpfile就是DMP文件名,REMAP_SCHEMA=原用户:现用户,也就是我们前文说到的用户映射,如果用户名一致,则不需要映射,EXCLUDE=USER指的是排除掉用户,因为我们已经自己创建好了用户,所以就把用户排除掉,logfile指定的是日志文件名,执行语句后日志文件会在我们的data_dir路径下。

到这里数据泵的导入就结束了。

数据泵的导出

相比于导入,导出的工作就很简单了。

同导入操作一样,我们也需要创建一个目录,并通过以下语句创建数据泵:

create directory dump_dir as 'e:\dump'; 

之后我们直接执行导出命令就可以了,命令如下:

expdp cospace/123456@orclWG directory=dump_dir file=COSPACE.dmp schemas=cospace logfile=expdp.log

schemas指的是要导出的用户名,dumpfile指的是要导出的DMP文件名,directory指定刚刚自定义的dump_dir,logfile指定日志文件名,执行语句后会在dump_dir路径下。

到这里,数据泵的导出也结束了。

总结

今天王子向大家分享了Oracle数据泵的导入导出的实战过程,内容还是比较简单的,相信小伙伴们可以很容易的上手实践。

如果实践中遇到什么问题可以留言,与王子一起讨论。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Oracle 利用数据泵导入导出数据

    (backup_path为路径名称,可自命名(必须是已存在路径),E:\app\tws\oradata\orcl为源数据库路径)

    星尘的一个朋友
  • 实验:Oracle数据泵导出导入之序列问题

    今天同事提出了一个问题: 使用数据泵expdp导出1个schema,有个表主键是触发器自增的id,导入测试库测试时,发现表里的数据比自增序列的值要大。导致插入...

    Alfred Zhao
  • Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(上)

    本文实验环境:Oracle 11.2.0.4,利用数据库自带的scott示例用户进行试验测试。

    Alfred Zhao
  • 数据泵导出导入物化视图(ORA-39083)

    有网友问,物化视图是否能单独进行导出和导入呢?因为导出不报错,但是导入的时候报错了,报错信息如下所示:

    小麦苗DBA宝典
  • 导入导出 Oracle 分区表数据

    导入导入Oracle 分区表数据是Oracle DBA 经常完成的任务之一。分区表的导入导出同样普通表的导入导出方式,只不过导入导出需要考

    Leshami
  • 数据泵(EXPDP)异机导出---network_link

    如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力,技术交流可以添加公众号~

    Lucifer三思而后行
  • apache sgoop 导入数据到 oracle、导出数据到 oracle 实现

    业务场景:是在oracle 数据库和 hive 数据库中 ,有多个相同结构的表,要求数据从2个库定时双向同步。

    微风-- 轻许--
  • 数据泵 EXPDP 导出工具的使用

    对于Oracle 数据库之间的导入导出,可以使用Oracle提供的导入导出工具EXP/IMP来实现。EXP/IMP是Oracle早期提供的数据导入导出工具。在...

    Leshami
  • oracle导出整个数据库和导入整个数据库命令

    小小鱼儿小小林
  • Oracle导入数据

    EltonZheng
  • 数据泵IMPDP 导入工具的使用

    数据的导入导出时数据库经常处理的作业之一,Oracle 提供了IMP和IMPDP以及SQL*Loader等工具来完成数据的导入工作,其中IMP服务于早期的9i...

    Leshami
  • Oracle datapump expdp/impdp 导入导出数据库时hang住

       最近在导出schema级别的数据时被hang住,不得不停止当前的导出作业,如果你有类似的问题,请继续往下看。 1、问题描述     导出整个schem...

    Leshami
  • Confluence 6 数据导入和导出 原

    Confluence 管理员和用户可以从各种方法向  Confluence 中导入数据。针对不同的导入方式,有关权限的要求也是不相同的。请参考页面 Import...

    HoneyMoose
  • [Hadoop大数据]——Hive数据的导入导出

    Hive作为大数据环境下的数据仓库工具,支持基于hadoop以sql的方式执行mapreduce的任务,非常适合对大量的数据进行全量的查询分析。 本文主要...

    用户1154259
  • Oracle expdp/impdp导出导入命令及数据库备份

    EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。

    用户5640963
  • Hbase数据导入导出

    用户3003813
  • mysql导入导出数据

    在mysql workbench里面对需要导入的表右键—>table data import wizard,选择刚才保存的utf-8编码的csv文件,选择nex...

    hankleo
  • R语言入门之数据的导入和导出

    在我们平时的研究工作中,经常使用的是逗号分隔文件(.csv文件)、制表符分隔文件(.tsv文件)和空格分隔文件(.txt文件)。当然对于一些基因组文件或...

    生信与临床
  • MySQL 数据库的导入导出

    格式: mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql 举例: /usr/local/mysql/bin/ mysqldu...

    白墨石

扫码关注云+社区

领取腾讯云代金券