双服务器或多服务器夜间自动备份问题的解决方案

·背景

一些公司为了安全及保险起见,常在网络上有两个服务器,对外提供互联网相关应用服务。一种可能的应用是:服务器A作为主服务器,对外提供网络服务,比如IIS网站服务,而另一台服务器B则作为数据库服务器或辅服务器(也可能是备份服务器)。当服务器A因为某种原因发生故障时,服务器B马上顶替服务器A,这样不会导致网络服务的中断。

 

·问题

1、两台服务器之间的自动备份的问题

如何实现两台服务器之间的自动备份是网管们经常遇到的问题。

比如:我们需要在夜间或服务器相对闲暇时,自动将服务器A中指定目录下的重要数据备份到服务器B中某个指定的目录中。

2、隔N天备份到不同目录的问题

有时,我们也可能遇到将服务器进行隔N天进行自动备份,同时又希望某一天的数据备份到另一个与上一天完全不同的目录中,这样,一旦万一出现某种错误,仍然可以做上一天的目录中恢复相关数据。这里讲的是“万一”,不怕一万,就怕万一。安全第一呀,呵!

3、多服务器间日期自动校对的问题

由于服务器长时间运行,不同服务器可能会出现时间不一致的情况。而有时,可能对时间的要求也比较严格,需要有一个统一的时间标准……,在一些特定的应用领域,比如金融、财经等,需要各服务器的时间保持高度的一致性。如何自动将多台服务器的时间校正为某一台服务器的时间呢?

 

·解决

这里仅就两台服务器的自动备份问题进行方法阐述。

任何实现方法都是有一定条件的,本解决之道也不例外。

首先,我们这里所讲的服务器,必须是在同一局域网内或相互之间是可以访问。现实的情况是,一个中小型企业的服务器一般会将服务器托管到一个相同的IDC服务商那里。当然也有例外——这个你就别与我没完没了地“钻牛角尖”了,我这里只讲技术问题,嘿嘿~~

其次,必须有相关访问权限。

好了,如果都有,我们继续。

 

先在服务器B中建立多个备份用的文件目录,这些目录用来备份主服务器上的相关目录的重要资料。为了方便描述,我这里仅用两个目录,分别是Even和Odd,前者用来备份双日(比如9月10日)的,后者用来备份单日(比如9月11日,哇,真巧,9·11!)的数据资料。

分别将两个目录共享出来,记得设置好相应的共享权限,特别建议设置一个用于备份的特别的用户帐号,并设置好密码——具体怎么建,这个别问我,太基础了。

 

进入服务器A某个目录中(比如:C:/CopyTask/目录下),建立用于备份的批处理文件CopyAToB_Even.bat及CopyAToB_Odd.bat,具体文件名,你自己取,但文件后缀名请使用.bat(这是一个批处理文件)。

CopyAToB_Even.bat的内容为:

xcopy E:/yourDir //BServerName/Even /S /E /Y
exit

 

CopyAToB_Odd.bat的内容为:

xcopy E:/yourDir //BServerName/Odd /S /E /Y
exit

(注:这里的E:/yourDir为你在服务器A中需要备份的重要资料的文件目录,以下将此目录的数据全部自动定时备份到服务器B上。)

值得一提的是:上面的//BserverName可以是你的服务器名称,也可以是IP地址,比如:192.168.2.100等。

 

接下来,再各自给它们分别建立一个.vbs文件(特别建议放在与.bat批处理文件相同的目录下,以方便管理,这里是C:/CopyTask/),文件名与上面的文件名相同,但后缀名改为.vbs。

其中:

CopyAToB_Even.vbs的内容为:

CreateObject("WScript.Shell").Run "cmd /c C:/CopyTask/CopyAToB_Even.bat",0

 

CopyAToB_Odd.vbs的内容为:

CreateObject("WScript.Shell").Run "cmd /c C:/CopyTask/CopyAToB_Odd.bat",0

 

再下来,就是建立定时任务了。

在任务计划中双击“添加任务计划”,一步一步地操作,设置你要运行的程序时,通过浏览方式指向上面的C:/CopyTask/CopyAToB_Even.vbs,然后设置好时间,比如每天早上凌晨四时(4:00)开始备份,为了实现上述隔天备份到不同目录的目的,特别将备份周期改为每两天,开始日期分别为当前日之前的单日和双日。比如:CopyAToB_Even.vbs为9月9日,而CopyAToB_Odd.vbs为9月10日。具体设置根据你的需要而定,不详述。

 

OK。做完之后,你需要测试一下,测试时,你可以将时间调整为当前时间的一分钟之后测试,如果一切正常,再调整为你需要的备份时间。之后退出,大功告成!

 

·本方案优点

(1)自动执行,且执行时无烦人的弹出式黑窗口。

(2)在某方案基础上进行变通,可以进行多服务器、多任务备份工作。

 

现实中的问题:

你在解决这样问题的时候,可能还会遇到一些问题,比如机房对每台服务器带宽的限制,局域网内部服务器的安全性,实际备份速度的瓶颈等。

笔者在使用上述方案进行备份时,就遇到了此类问题,比如实际的备份速度非常之慢。如果你的两台服务器是带双网卡的,我这里特别建议:分别将服务器的另一个网卡使用起来,由禁用变成启用,配上一定的局域网内部IP号(比如:192.168.8.10,192.168.8.20),用交叉线将两台服务器的这两个网卡直接连结起来。然后启用防火墙,将用于公网的IP上的文件共享端口(445)关闭,打开上述网卡的文件共享端口,设置共享及相关权限。这样,保证只有直接连接的两台服务器之间才可以共享文件夹,保证服务器的安全。完成之后,上面备份脚本就可能变成:

CopyAToB_Even.bat的内容为:

xcopy E:/yourDir //192.168.8.20/Even /S /E /Y
exit

 

CopyAToB_Odd.bat的内容为:

xcopy E:/yourDir //192.168.8.20/Odd /S /E /Y
exit

 

(最后更新日期:2009-9-17) 

  • 0
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值