代码改变世界

Sybase 数据库bcp out备份重要表数据

2014-10-21 15:07  AlfredZhao  阅读(1453)  评论(0编辑  收藏  举报

bcp相当于逻辑备份,bcp out导出的文件,bcp in可以导回去。

环境:RHEL 5.5 + Sybase客户端软件

需求:在客户端(Linux)备份服务端(HP-UX)重要配置表数据

1.bcp out备份脚本:

#!/bin/bash
#sybase bcp out
foldername=`date +%Y%m%d`
cd /备份目录
if [ -d $foldername ]
then
        echo    'go on'
else
        echo    'need mkdir'
        mkdir $foldername
fi

export  SYBASE=/opt/sybase      
export  SYBROOT=/opt/sybase     
export  SYBASE_ASE=ASE-15_0     
export  SYBASE_OCS=OCS-15_0     
export  SYBASE_FTS=FTS-15_0     
export  SYBASE_SYSAM=SYSAM-2_0
export PATH=$PATH

/opt/sybase/OCS-15_0/bin/bcp 库名..表名 out /备份目录/$foldername/表名.txt -U用户 -P密码 -S服务名 -c -t"~
!~" -Jcp936 -e /备份目录/$foldername/表名.log
/opt/sybase/OCS-15_0/bin/bcp 库名..表名 out /备份目录/$foldername/表名.txt -U用户 -P密码 -S服务名 -c -t"~
!~" -Jcp936 -e /备份目录/$foldername/表名.log

注:客户端的$SYBASE/interfaces 配置文件就相当于Oracle的tnsnames.ora文件。

2.保留策略

#!/bin/bash
#del old folders
cd /备份目录
find . -mtime +10 | xargs rm -rf