使用批处理文件异地备份数据库(最近几天的数据) |
本文标签:使用批处理文件异地备份数据库 数据库异地备份对一个网站来说是非常必要的,这里谈一下使用批处理文件对数据库异地本份的过程,首先需要准备两个文件,一个是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了 。 |