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

VBScript
用vbs清空iis log 中自己登录ip的记录
vbs sendmail发邮件带附件方法
用vbs通过135端口执行命令的脚本
用vbs实现的瞬间关闭多个系统进程的脚本
vbs 中调用shell.application 简单函数
vbs wmi获取电脑硬件信息实例
用vbscript实现隐藏任务栏图标的脚本
vbs正则表达式代码
vbs版IP地理位置查询小偷
超级厉害的VBS定时提醒脚本 Remind.vbs
vbs实现的支持拖动的txt文本切割器
VBS如何察看或获得剪切板内容的脚本
VBS备忘录启动代码
VBS脚本使用WMI操作注册表的代码
vbs xmldom初次实战获取QQ签名的代码
VBS破坏性应用代码
vbs生成ACCESS数据里所有表的字段
vbs实现的图片自适应表格,目前最佳解决方案!
ProcessMagnifier.vbs进程查看
用于提取网易文件的hta代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 210 ::
收藏到网摘: 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了。