当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 使用批处理文件异地备份数据库(最近几天的数据)

VBScript
VBS中SendKeys的基本应用
VBScript教程 第十四课在VBScript中使用对象
VBScript教程 第十三课 VBScript与窗体
VBScript教程 第十二课VBScript页面的简单样例
VBScript教程 第十一课深入VBScript
VBScript教程 第十课 VBScript编码约定
VBScript教程 第九课VBScript过程
VBScript教程 第八课 使用循环语句
VBScript教程 第七课使用条件语句
VBScript教程 第六课VBScript运算符
VBscript教程 第五课 VBScript常数
VBScript教程 第四课VBScript变量
VBScript教程 第三课VBScript数据类型
VBScript教程 第二课在HTML页面中添加VBscript代码
VBScript教程 第一课什么是VBScript
VBScript的入门学习资料
VBScript语法速查及实例说明
MsgBox函数语言参考
VBS教程:正则表达式简介 -后向引用
VBS教程:正则表达式简介 -选择与编组

VBScript 中的 使用批处理文件异地备份数据库(最近几天的数据)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 190 ::
收藏到网摘: n/a

数据库异地备份对一个网站来说是非常必要的,这里谈一下使用批处理文件对数据库异地本份的过程,首先需要准备两个文件,一个是ftp.txt(存储ftp命令),一个是movefile.bat(存储dos命令).
==========ftp.txt
open 服务器的ip地址
ftp用户名
ftp密码
bin
get 数据库名.mdb
bye
quit
上面是简单的例子,具体的要看你的数据库存放的路径、一次性获得多个文件。可以加上cd,mget等ftp命令
==========movefile.bat
@echo off
ftp -i -s:ftp.txt
rem date format is "YYYY-MM-DD"
set dt=%date:~0,10%
set td=%date:~0,10%
rem set /P dt="Input Date: "
rem set /P td="Input Date: "
set i=1
:forok
if %i%==1 goto i01
if %i%==2 goto i02
if %i%==3 goto i03
if %i%==4 goto i04
if %i%==5 goto i05
:i01
set i=2
goto nextok
:i02
set i=3
goto nextok
:i03
set i=4
goto nextok
:i04
set i=5
goto nextok
:i05
set i=6
goto nextok
:nextok
set dy=%dt:~0,4%
set dm=%dt:~5,2%
set dd=%dt:~8,2%
if %dm%%dd%==0101 goto L01
if %dm%%dd%==0201 goto L02
if %dm%%dd%==0301 goto L07
if %dm%%dd%==0401 goto L02
if %dm%%dd%==0501 goto L04
if %dm%%dd%==0601 goto L02
if %dm%%dd%==0701 goto L04
if %dm%%dd%==0801 goto L02
if %dm%%dd%==0901 goto L02
if %dm%%dd%==1001 goto L05
if %dm%%dd%==1101 goto L03
if %dm%%dd%==1201 goto L06
if %dd%==02 goto L10
if %dd%==03 goto L10
if %dd%==04 goto L10
if %dd%==05 goto L10
if %dd%==06 goto L10
if %dd%==07 goto L10
if %dd%==08 goto L10
if %dd%==09 goto L10
if %dd%==10 goto L11
set /A dd=dd-1
set dt=%dy%-%dm%-%dd%
goto END
:L10
set /A dd=%dd:~1,1%-1
set dt=%dy%-%dm%-0%dd%
goto END
:L11
set dt=%dy%-%dm%-09
goto END
:L02
set /A dm=%dm:~1,1%-1
set dt=%dy%-0%dm%-31
goto END
:L04
set /A dm=dm-1
set dt=%dy%-0%dm%-30
goto END
:L05
set dt=%dy%-09-30
goto END
:L03
set dt=%dy%-10-31
goto END
:L06
set dt=%dy%-11-30
goto END
:L01
set /A dy=dy-1
set dt=%dy%-12-31
goto END
:L07
set /A "dd=dy%%4"
if not %dd%==0 goto L08
set /A "dd=dy%%100"
if not %dd%==0 goto L09
set /A "dd=dy%%400"
if %dd%==0 goto L09
:L08
set dt=%dy%-02-28
goto END
:L09
set dt=%dy%-02-29
goto END
:END
if %i%==2 goto forok
if %i%==3 goto forok
if %i%==4 goto forok
if %i%==5 goto forok
if %i%==6 goto mdb
:mdb
echo copy %td%
echo del %dt%
copy 数据库名.mdb "%td%".mdb
del "%dt%".mdb
上面是备份最近5天的数据,每天一个。你可以修改上面的代码到最近6、7。。。。n天
如:修改成6天
if %i%==5 goto i05 下增加
if %i%==6 goto i06
:i05
set i=6
goto nextok 下增加
:i06
set i=7
goto nextok
if %i%==6 goto mdb 改为
if %i%==6 goto forok
if %i%==7 goto mdb
依次类推。。。。到n天 :-)
以上两个文件准备好了,我们可以使用windows自带的任务计划来计划程序每天自动去备份数据了
具体步骤:控制面板--》任务计划--》添加任务计划。。。。选择每天。。。选择movefile.bat
就ok了。