首选需要在UNIX下创建一个管道(只创建一次即可):
$mknod  ./exp_pipe  p
$ ls -l exp_pipe
prw-rw-r--   1 report   group           0 Mar 17 05:20 exp_pipe然后通过管道,将EXP导出的数据直接压缩,注意:下面二行要写在同一个shell脚本中。
compress  < ./exp_pipe > ./tmp_now.dmp.Z &
exp user/passwd@数据库连接串 file=./exp_pipe direct=y compress=no log=./exp.log

解决方案 »

  1.   

    20G的DMP文件,压缩后的大小在4G左右。
      

  2.   

    oracle的rman备份可以支持增量备份,你可以自己设置一个备份策略,好比每周日做一次数据库全备份(level 0 级的备份),然后周一周二做增量备份(level 1 级的备份),周三在做一次数据库全备份(level 0),最后周四、周五、周六做数据库的增量备份(level 1)。这样既可以保证你的备份在大部分时间内比较快,而且也可一保证在需要恢复时较快。具体的备份策略要根据你的要求而定,我只是举个例子。
      

  3.   

    不建议使用exp对数据量大的数据库进行备份,因为比较慢。
      

  4.   

    zealot_zk(风中追风) 的主意不错,不知道在那有rman备份的资料可以学习?
    我还是第一次听到rman这个词,都不知道是什么意思,呵呵.
    我公司里做技术的人走了,我对数据备份一点都不懂.5555555
    平台是windows,不要说unix啦,天书一般,呵呵.不懂的.
      

  5.   

    你可以试试这个,使用Dmp方式
    exp username/userpassword@database inctype=complete file=x:\xxx.dmp
    这种是完全备份方式
    导出命令exp跟oracle版本不同而不同
    Oracle73 ->exp73
    Oracle80 ->exp80
    OracleXX不清楚,其本上是exp或者exp加版本号
      

  6.   

    既然第一次听到RMAN这个词,那建议买本备份与恢复的书看看或者去网上找资料,这个只有自己熟悉原理并熟练运用以后才能根据实际情况与需求实施相应的备份策略
    zealot_zk(风中追风)的提议很不错,他指的方向是对的,当然,办法有很多种,我的意思是可以先从他的方案做起