在10G之前,甚至在10G的Oracle环境中,有很多数据量不大,重要性不太高的系统依然采用EXP/IMP逻辑导出备份方式,或者,作为辅助备份方式。

通常情况下,我们都是这样操作的:
1.exp导出
2.gzip压缩
3.gzip解压
4.imp导入

这样操作有如下两个不好的地方:

1.占用大量磁盘空间,磁盘剩余空间必须大于导出的,未压缩的文件大小加上压缩后的文件大小。如果设置计划任务,每日定时导出的话,很有可能因为磁盘空间不足导致备份失败。由于这种备份方式磁盘使用率的剧烈抖动,即使有监控工具,也不能很好的提供趋势分析
2.系统资源浪费,在导出时,大部分都在等待IO。而压缩时,又大部分等待CPU,整体利用率不高。

那么,有没有办法直接导出成压缩文件?并直接从压缩文件导入呢?

EXP导出:
$ mknod p p
$ gzip < p > test.dmp.gz & exp system/xxxx tables=TEST buffer=31457280 CONSISTENT=Y COMPRESS=N file=p
[3] 24532

Export: Release 10.2.0.5.0 - Production on 星期四 1月 19 10:27:45 2012

Copyright (c) 1982, 2007, Oracle. All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Data Mining and Real Application Testing options

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径...

当前的用户已更改为 SYSTEM
. . 正在导出表 TEST导出了 1875063 行
成功终止导出, 没有出现警告。

[1] Done gzip < p > test.dmp.gz
[2]- Done gzip < p > test.dmp.gz
[3]+ Done gzip < p > test.dmp.gz

$ rm -rf p

IMP导入:
$ mknod p p

$ gunzip < test.dmp.gz > p & imp system/xxx file=p full=y buffer=31457280

[2] 24572

Import: Release 10.2.0.5.0 - Production on 星期四 1月 19 10:29:16 2012
Copyright (c) 1982, 2007, Oracle. All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Data Mining and Real Application Testing options

经由常规路径由 EXPORT:V10.02.01 创建的导出文件
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入

. 正在将 SYSTEM 的对象导入到 SYSTEM
. . 正在导入表 "TEST"导入了 1875063 行
成功终止导入, 没有出现警告。

[1] Done gzip < p > test.dmp.gz
[2]+ Done gunzip < test.dmp.gz > p

EXP直接导出压缩问津,IMP直接导入压缩文件的方法的更多相关文章

  1. 在Centos中导入sql文件的方法

    在Centos中导入sql文件的方法 利用mysql -u root -p进入mysql数据库 对于文件的导入,在Centos下里面的是首先要新建一个和文件相同名字的数据库.例如:mysql>c ...

  2. python用模块zlib压缩与解压字符串和文件的方法

    摘自:http://www.jb51.net/article/100218.htm Python标准模块中,有多个模块用于数据的压缩与解压缩,如zipfile,gzip, bz2等等. python中 ...

  3. 分享linux中导入sql文件的方法

    为使用阿里云主机,没有装ftp,也没有装phpmyadmin,所以一切都得靠命令行.转移网站的重要一步就是转移数据库,这里简单介绍一下如何在这种情况下导入sql文件 因导出sql文件 在你原来的网站服 ...

  4. YII使用PHPExcel导入Excel文件的方法

    1.下载phpexcel,将压缩包中的classes复制到protected/extensions下并修改为PHPExcel. 2.修改YII配置文件config/main.php 'import'= ...

  5. 有道云笔记导入txt文件的方法

    有道云笔记pc版迷之不能导入txt文件 尝试很多方法后发现 通过网页版 有道云 可以直接上传 但是pc版不能查看而移动端可以查看 很迷~

  6. 在linux中导入sql文件的方法分享(使用命令行转移mysql数据库)

    因导出sql文件 在你原来的网站服务商处利用phpmyadmin导出数据库为sql文件,这个步骤大家都会,不赘述. 上传sql文件 前面说过了,我们没有在云主机上安装ftp,怎么上传呢? 打开ftp客 ...

  7. Altium Designer 只导出PCB元器件及标号的PDF文件的方法

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 作者:struct_mooc 博客地址:https://www.cnblogs.com/stru ...

  8. Oracle新建数据库,并导入dmp文件

    1:安装Oracle及新建数据库 Oracle 11g安装图解 http://www.cnblogs.com/qianyaoyuan/archive/2013/05/05/3060471.html h ...

  9. 命令行导入SQL文件

    摘要:把数据库导出为XX.sql格式的数据库文件,导入到另外一个数据库中的时候,总是无法全部导入.及时用mysql的命令界面导入依然是无法全部导入.老师告诉我:在命令行中运行的效率和成功率是最快和最高 ...

随机推荐

  1. Unity中的特殊文件夹

    看了雨松MOMO的 Unity3D研究院之手游开发中所有特殊的文件夹学习了,做个笔记. 1.Editor Editor文件夹可以在根目录下,也可以在子目录里,只要名子叫Editor即可.不过我比较喜欢 ...

  2. 如何在调试Window App时,触发 Suspending ,Resuming 等事件

    Visual Studio prevents Windows from suspending an app that is attached to the debugger. This is to a ...

  3. pl/sql 实例解析 01

    1. 合并 firstname, lastname. 1: declare 2: v_first_name varchar2(255); 3: v_last_name varchar2(255); 4 ...

  4. NPAPI命休矣

    NPAPI命休矣,Firebreath命休矣,NPPluginProxy命休矣.以后该更多专注LLVM.Emscripten.Websocket和NativeClient之类的技术啦.

  5. Python之Matplotlib库常用函数大全(含注释)

    plt.savefig(‘test’, dpi = 600) :将绘制的图画保存成png格式,命名为 test plt.ylabel(‘Grade’) :  y轴的名称 plt.axis([-1, 1 ...

  6. 【问题】SUSE已经安装了libsodium,安装zeromq时出现下面的错误?

    1.[问题]SUSE已经安装了libsodium,安装zeromq时出现下面的错误? checking for libsodium... no configure: error: Package re ...

  7. smartJS 0.1 API 讲解 - PromiseEvent

    上篇简单的介绍smartjs了一些通用方法的api.这篇介绍基础的PromiseEvent(这个名字一直没想好,以前准备用callbacks的,但避免与jquery混淆,st的命名空间可以直接挂到$上 ...

  8. 左萧龙(LZ)个人博客

    网址(blog):http://www.cnblogs.com/zuoxiaolong/ 网站:http://www.zuoxiaolong.com/

  9. gibhub上搭建个人静态网站介绍

    之前学习过git的基本命令.今天介绍一下github上搭建个人网站的步骤. 在window系统上搭建gibhub个人网站(只能执行html.css和js文件),这就是纯静态页面. 步骤一:注册gith ...

  10. C++获取系统时间方法(毫秒级)

    #include <sys/time.h> long getCurrentTime() { struct timeval tv; gettimeofday(&tv,NULL); r ...