IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置:首页数据库Oracle → Oracle export数据自动压缩

Oracle export数据自动压缩

时间:2015/6/28来源:IT猫扑网作者:网管联盟我要评论(0)

  oracle 提供了exp程序,能方便的导出数据, 但该工具没有压缩功能.

  对於磁盘空间紧张的主机,比较好的方法是使用用命名管道,将数据导到pipe, mknod /dev/pipe p,

  通过gzip,或bzip2压缩数据 .

  写了段小程序自动处理,并提供自动ftp到远端主机的功能

  #!/bin/bash

  # Write : Gan Jian Hui

  # Description export ORACLE DUMP DATA and auto compress

  # can auto upload to ftp server

  # example:

  # bexp userid=user/pass log=/tmp/aa.log rows=no owner=OLAPSYS file=ftp://ftpuser:ftppass@ftpserver/aaa.dmp.bz2 statistics=none

  #

  # Date : 2010/08/11

  #

  PID=$$;

  PIPE="/tmp/tmp$USER.pipe.$PID"

  PARFILE="/tmp/tmp$USER.parm.$PID"

  [ -z $ORACLE_HOME ] && exit

  [ -z "$*" ] && $ORACLE_HOME/bin/exp help=y

  if echo "$*" |grep -qi 'help=y' ;then

  $ORACLE_HOME/bin/exp help=y

  exit

  fi

  # [[ "$Parm" =~ '[Ff][Ii][Ll][Ee]=*' ]] && echo file

  while [ -n "$1" ] ; do

  Parm=$1 ;

  shift ;

  case $Parm in

  [fF][iI][lL][eE]\=*)

  echo "file=$PIPE" >>$PARFILE

  DMPFILE=${Parm:5}

  ;;

  *)

  echo "$Parm" >>$PARFILE

  ;;

  esac;

  done

  [ -f "$PARFILE" ] || exit

  [ -p $PIPE ] || mknod $PIPE p

  trap "rm -f -- '$PIPE' '$PARFILE'" EXIT

  case $DMPFILE in

  ftp://*) [ -e /usr/bin/curl ] || exit

  esac

  $ORACLE_HOME/bin/exp parfile=$PARFILE &

  case $DMPFILE in

  ftp://*.gz) gzip < $PIPE |curl -T - $DMPFILE ;;

  ftp://*.bz2) bzip2 < $PIPE |curl -T - $DMPFILE ;;

  *.gz) gzip < $PIPE > $DMPFILE ;;

  *.bz2) bzip2 < $PIPE > $DMPFILE ;;

  *) echo "'$1' cannot be compressd by bexp()" ;;

  esac

关键词标签:Oracle

相关阅读

文章评论
发表评论

热门文章 Oracle中使用alter table来增加,删除,修改列Oracle中使用alter table来增加,删除,修改列oracle中使用SQL语句修改字段类型-oracle修oracle中使用SQL语句修改字段类型-oracle修使用低权限Oracle数据库账户得到管理员权限使用低权限Oracle数据库账户得到管理员权限Oracle对user的访问控制Oracle对user的访问控制

相关下载

人气排行 ORACLE SQL 判断字符串是否为数字的语句Oracle中使用alter table来增加,删除,修改列的语法ORACLE和SQL语法区别归纳(1)oracle grant 授权语句如何加速Oracle大批量数据处理Oracle删除表的几种方法ORACLE修改IP地址后如何能够使用Oracle 10g创建表空间和用户并指定权限