迄今为止,导出/导入工具集仍是跨多个平台转移数据所需劳动强度最小的首选实用工具,尽管人们常常抱怨它速度太慢。导入只是将每条记录从导出转储文件中读出来,然后使用常见的 INSERT INTO 命令将其插入到目标表中,因此导入可能是个很慢的过程,这一点并不让人感到吃惊。

进入Oracle Data Pump,Oracle Database 10g中的导出/导入工具包的更新更快的同类工具,它被设计来成倍地加速这个过程。

Data Pump反映了整个导出/导入过程的彻底革新。它不是使用常见的SQL命令,而是应用专用 API来以更快得多的速度加载和卸载数据。在我的测试中,我看到导出性能比在直接模式下提高了 10-15倍,导入过程性能提高了5倍。此外,与使用导出实用工具不同,它还能够只取出特定类型的对象(如过程)。

Data Pump导出

这个新的实用工具称为expdp,以和原来的导出exp区分开。在本例中,我们将用Data Pump来导出一个大表CASES,大小约为3GB。Data Pump在服务器端使用文件处理来创建和读取文件;因此,目录作为位置使用。在这种情况下,我们将使用文件系统 /u02/dpdata1来保存转储文件。

create directory dpdata1 as ‘/u02/dpdata1’;

grant read, write on directory dpdata1 to ananda;

接下来,我们将导出数据:

expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES.dmp job_name=CASES_EXPORT

让我们来分析该命令的各个部分。用户 ID/口令组合、表和转储文件参数的意义是显而易见的。与原来的导出不同,文件是在服务器(不是客户端)上创建的。位置由目录参数值DPDATA1指定,它指向之前创建的 /u02/dpdata1。这个进程还在目录参数指定的位置上创建一个日志文件(同样在服务器上)。默认地,这个进程使用一个名称为 DPUMP_DIR 的目录;因此可以创建它来代替 DPDATA1。

注意上面的参数job_name,这是个特殊的参数,在原来的导出中没有。所有的 Data Pump 工作都通过作业来完成。Data Pump作业 — 与 DBMS 作业不同 — 只是服务器进程,它代表主进程处理数据。主进程(称为主控制进程)通过高级队列 (AQ) 来协调这项工作;它通过在运行期内创建的一个特殊的表(称为主表)来实现这个目的。在我们的例子中,如果您在expdp运行时检查用户 ANANDA 的模式 ,您将注意到一个表 CASES_EXPORT 的存在(对应参数job_name)。当expdp结束时,这个表被丢弃。

导出监控

当 Data Pump Export (DPE) 运行时,按 Control-C;它将阻止消息在屏幕上显示,但不停止导出进程本身。相反,它将显示 DPE 提示符(如下所示)。进程现在被认为处于“交互式”模式:

Export>

这种方法允许在这个 DPE 作业上输入几条命令。要查看概要,在提示符下使用 STATUS 命令:Export> status

Job:CASES_EXPORT

Operation:EXPORT

Mode:TABLE

State:EXECUTING

Degree: 1

Job Error Count: 0

Dump file:/u02/dpdata1/expCASES.dmp

bytes written = 2048

Worker 1 Status:

State:EXECUTING

Object Schema:DWOWNER

Object Name:CASES

Object Type:TABLE_EXPORT/TBL_TABLE_DATA/TABLE/TABLE_DATA

Completed Objects: 1

Total Objects: 1

Completed Rows: 4687818

记住,这只是状态显示。导出在后台工作。要继续在屏幕上查看消息,从 Export> 提示符下使用命令 CONTINUE_CLIENT。

并行操作

您可以通过 PARALLEL 参数为导出使用一个以上的线程来显著地加速作业。每个线程创建一个单独的转储文件,因此参数 dumpfile 应当拥有和并行度一样多的项目。您可以指定通配符作为文件名,而不是显式地输入各个文件名,例如:expdp ananda/abc123 tables=CASES directory=DPDATA1

dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget

官方微博

TechTarget中国

oracle 高速保存数据,教你怎样在Oracle数据库中高速导出/导入(一)相关推荐

  1. Oracle中用system存数据,【学习笔记】Oracle表空间 数据存放system表空间影响数据库性能...

    天萃荷净 分享一篇,关于Oracle数据库system表空间研究,不能将用户数据存放在system表空间的原因 为什么不建议客户把业务数据存放到SYSTEM表空间中,一直想通过试验的数据来说明问题,今 ...

  2. ifix oracle,IFIX实时数据通过ODBC转存到Oracle

    <IFIX实时数据通过ODBC转存到Oracle>由会员分享,可在线阅读,更多相关<IFIX实时数据通过ODBC转存到Oracle(7页珍藏版)>请在人人文库网上搜索. 1.一 ...

  3. oracle 合并重复数据_三天三夜整理出来的数据库常见的面试题,让你直接拿走...

    1.触发器的作用? 触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的.它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化.可以联级运算.如,某表 ...

  4. mysql数据库读取数据,教你如何从 MySQL 数据库读取数据

    从 MySQL 数据库读取数据 SELECT 语句用于从数据表中读取数据: SELECT column_name(s) FROM table_name 我们可以使用 * 号来读取所有数据表中的字段: ...

  5. python读取oracle数据转换成json文件_python 读取网页json数据库中

    数据挖掘敲门砖--Python爬虫入门 Python爬虫.jpg WHAT 数据挖掘是一门综合的技术,随着Ai的兴起,在国内的需求日渐增大. 数据挖掘的职业方向通常有三个,顺便概要地提一下所需的技能( ...

  6. mysql数据库快速传输方案_MySQL数据库迁移快速导出导入大量数据

    数据库迁移是我们经常可遇到的问题,对于少量的数据,迁移基本上不会有什么问题.生产环境中,有以下情况需要做迁移工作: 磁盘空间不够.比如一些老项目,选用的机型并不一定适用于数据库.随着时间的推移,硬盘很 ...

  7. Oracle数据库中正确的导入dmp数据库文件

    其实在Oracle数据导入与导出imp/exp的实际操作和Oracle数据还原和备份的实际操作很相似.我们大家都知道exp命令可以把相关的数据从远程Oracle数据库的服务器导出到本地的dmp文件,i ...

  8. 数据库直接存图片mysql_教你如何在MySQL数据库中直接储存图片

    如果你想把二进制的数据,比如说图片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的!我将告诉你怎样通过HTML表单来储存这些文件,怎样访问和使用这些文件. 本文概述: 在 ...

  9. 如何用python批量下载数据_如何用python从wind中批量导出数据

    2017-08-07 回答 先建立一个数据库. qw@qw-latitude-e4300:~$ mysql -u root -p enter password: 打开数据库,正确输入密码之后,呈现下面 ...

  10. Python爬取起点小说并保存到本地文件夹和MongoDB数据库中

    Python爬取起点小说并保存到本地MongoDB数据库中 工具:Python3.7 + Mongo4.0 + Pycharm """ 爬取起点小说<诡秘之主> ...

最新文章

  1. 详细说明Spring--AOP
  2. 利用人工智能保护生物多样性
  3. string类型加减_测试人员应该知道的Redis知识(四) String
  4. Android Studio一直处于Building的解决方法
  5. 今天的新坑 ubuntu18.04安装docker
  6. spring中自定义属性编辑器CustomEditorConfigurer
  7. 如何隐藏运行 winform 程序?
  8. Android 第一篇
  9. Clearcase no version selected issue
  10. HTML5网页设计基础——LOGO的制作
  11. US Domain Center 域名抢注服务
  12. 金蝶实现EXCEL复制粘贴功能
  13. [JLOI2015]装备购买
  14. SNF快速开发平台--多组织+多平台+多系统处理方案
  15. IE浏览器在地址栏针对param直接输入中文导致乱码的解决方案
  16. python外星人入侵代码_Python外星人入侵完整代码和注释(一)
  17. css-对号/叉号(纯css)
  18. VBA word 常用代码及注释
  19. 如何设置计算机自动连接宽带,宽带自动连接设置,小编教你电脑怎么设置宽带自动连接...
  20. CentOS7.6 无网络环境安装MySQL5.7.x

热门文章

  1. Android - UI
  2. Apache Mahout的Taste基于Hadoop实现协同过滤推荐引擎的代码分析
  3. 修改rocketmq nameserver的默认端口号
  4. 哈尔滨冰景:映衬时代主题
  5. 邬建国教授受聘为浙江大学光彪教授
  6. Android客户端实现session会话过期的功能
  7. SpringBoot 中 get/post 请求处理方式,以及requestboy为Json时的处理
  8. webpack手动构建vue和vue-cli构建使用 px2rem-loader ,全局自动转换px单位,让自适应来的更简单点!...
  9. 使用Photoshop+960 Grid System模板进行网页设计
  10. 锚点盒子随滚动条浮动