[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 数 据 库 > Sybase > 正文

Sybase SQL Server的快速备份与传输

作者:年胜 来源:不详 (2005-11-14 13:15:44)

 言:目前辽宁地税税收征管系统采用Sybase SQL Server大型数据库,我局采用定期备份的方法,确保数据的安全。在日常的工作中,我们逐步摸索出一些经验技巧,并与宏伟分局的韩丹同志进行多次交流,同时参考了handan同志所写的《辽宁地税征管系统数据库自动备份的实现方法》,制定了我局的税收征管系统的快速备份与传输方案。
目的:
1、备份方法:税收征管系统本身十分庞大,SW_DB四个文件的总和达3G之多,而通过转储设备进行备份后的文件也达1.5G,因此我局采用先压缩后传输的方法进行数据的异地备份。
2、备份目的:无论是通过转储设备进行备份,还是压缩大容量的文件同样需要大量的时间,而备份工作每天都要进行,同时还要避开各客户端工作时对数据的修改,以保证数据的完整性,我们所要做的就是如何能够在夜间实现SW_DB的自动备份和自动压缩,并自动传输到指定的FTP服务器上。
规划:
1、根据工作需要及当前的软、硬件设施,我局采取了按日备份,按周整理的备份方法。具体地讲,每周一压缩后备份的文件名为back1.rar,每周二压缩后备份的文件名为back2.rar,以此类推,每周循环一次(周六、周日为休息日,因此只在周六做备份),每周的备份覆盖上周的备份。
2、本地硬盘备份存储文件夹为F:BACK。
3、备份相关文件存储文件夹为F:BACK-JOB。
(1)、dump.sql:数据库备份脚本文件
(2)、1.bat:压缩并传输至FTP服务器的批处理文件(周一使用)
(3)、2.bat:压缩并传输至FTP服务器的批处理文件(周二使用)
(4)、3.bat:压缩并传输至FTP服务器的批处理文件(周三使用)
(5)、4.bat:压缩并传输至FTP服务器的批处理文件(周四使用)
(6)、5.bat:压缩并传输至FTP服务器的批处理文件(周五使用)
(7)、6.bat:压缩并传输至FTP服务器的批处理文件(周六使用)
(8)、BACK-TZHDS.mcr:将压缩后的备份文件传输至FTP服务器的脚本文件
说明:(“//”后为注释)
1、创建磁盘转储设备tapedump0,指向f: apedump0.dat,建议F盘至少有3G存储空间(目前我局tapedump0.dat约占1.5G,用Winrar压缩后约占150M,六个压缩文件约占0.9G)。
2、创建dump.sql
dump database sw_db to tapedump0 file=sw_db
go         //备份整个数据库。将数据库sw_db备份到磁盘转储设备(f: apedump0.dat)
dump tran sw_db with truncate_only
go         //撤除日志不活动的部分并增加一个新的日志记录项记录转储。不执行备份。
3、创建1.BAT(周一运行的批处理文件)
isql -Usa -P -Ssybase -odump.log -i dump.sql   //调用dump.sql执行数据库备份
SET PATH=%PATH%;C:Program FilesWinRAR   //设置搜索路径,使Winrar可以再任何目录下执行
f:
cd back                       //本地硬盘备份路径f:back文件夹下
copy f:back-jobdump.log dump1.log   //将f:back-job下的备份日志文件dump1.log复制到f:back文件夹下,并改名为dump1.log(表示为周一的备份日志)
winrar A -o+ -ibck -ilog back1.rar f: apedump0.date   //将备份文件用Winrar压缩为back1.rar(表示为周一的压缩备份)
SET PATH=%PATH%;C:Program FilesGlobalSCAPECuteFTP   //设置搜索路径,使CuteFTP可以再任何目录下执行
f:
cd back-job         // BACK-TZHDS.mcr在E:back-job文件夹下
BACK-TZHDS.mcr       //执行CuteFTP的宏命令,将备份压缩后的文件上传至FTP服务器
EXIT             //退出由批处理形成的DOS模式的命令行窗口
4、创建2.BAT(周二运行的批处理文件)
isql -Usa -P -Ssybase -odump.log -i dump.sql
SET PATH=%PATH%;C:Program FilesWinRAR
f:
cd back
copy f:back-jobdump.log dump2.log       //表示为周二的备份日志
winrar A -o+ -ibck -ilog back2.rar f: apedump0.dat //表示为周二的压缩备份
SET PATH=%PATH%;C:Program FilesGlobalSCAPECuteFTP
f:
cd back-JOB
BACK-TZHDS.mcr
EXIT
5、创建3.BAT、4.BAT、5.BAT、6.BAT (略)
6、创建BACK-TZHDS.mcr。BACK-TZHDS.mcr是通过CuteFTP生成的,过程如下:
(1)启动CuteFTP;
(2)运行“命令”->“宏” ->“开始记录”(如图一);
http://www.laozang.com/pbbbs/attachment/12_16.jpg
(图一)
(3)连接FTP服务器,进行文件传输;
(4)运行“工具”->“宏” ->“结束宏” (如图二),根据提示进行保存(如图三);
http://www.laozang.com/pbbbs/attachment/12_14.jpg
(图二)
http://www.laozang.com/pbbbs/attachment/12_15.jpg
(图三)
(5)运行“编辑”->“设置”,设定每次传输完毕后自动退出CuteFTP (如图四);
http://www.laozang.com/pbbbs/attachment/12_13.jpg
(图四)
7、根据分局的实际情况设定计划任务,以达到非工作时间(夜间或清晨)实现这些关键文件的逐一自动压缩、逐一自动传输到指定的FTP服务器上。以上方法在Winrar 3.1版和CuteFTP XP 5.0.1.0版下运行通过。
计划任务:星期一22:00   #1.bat
计划任务:星期二22:00   #2.bat
计划任务:星期三22:00   #3.bat
计划任务:星期四22:00   #4.bat
计划任务:星期五22:00   #5.bat
计划任务:星期六22:00   #6.bat

实现环境:Win2K Server , Sybase Sql Server 11.5 ,Winrar 3.1 , CuteFtp Xp 5.0.1.0
在使用中,只需要将数据库名改过就可以了!

(http://www.fanqiang.com)



 相关文章

★  感谢所有的作者为我们学习技术知识提供了一条捷径  ★
www.fanqiang.com