多台服务器文件数据备份

最近在服务器这块也是蛮伤神的,总是担心玩家数据会丢失,因为lib本身就已经做了一次备份处理,每天凌晨5点自动进行文件copy备份到指定盘符目录。但最近机房这边事情也是蛮多的,不知道什么时候会换线路,而这些文本数据只有当玩家进行quit后才会更新保存,或者是等宕机后才会进行保存,而对于突然的断电的没有任何措施,甚是伤神。

从最近的一个项目里看到了用到了批处理备份,就想尝试这种方法用到自己正在伤神的数据备份问题里。尝试了2种方法,最后考虑效率问题,还是用了另一种方法。

服务器A 数据存储
服务器B 数据备份

方案1:
直接在 服务器B上面进行操作,将FTP功能和列目录写到一个批处理,然后在服务器B里进行计划任务,每5分钟执行一次,它的效果是将服务器A的所有的文件进行一个一个的往自身里下载,从而达到了备份的效果。但是问题就来了,这5分钟要下载完上千个文件,可能下不完,这也是其次,主要是伤不起那复制的文件数量。所以后期放弃了这方案。

方案2:
和方案1差不多,就是更简洁了点。直接在服务器A上面进行Xcopy将目录复制到指定目录,然后利用windows的winRaR的功能处理一次,将要备份的文件xcopy出来之后,进行winRaR的命令行压缩文件,处理完压缩后并将Xcopy出来的文件夹删除。这时候在服务器A里产生了一个1204121244.rar(年月日时间分钟)的文件,由于硬盘是SSD,每5分钟执行一次这样的操作没任何压力,产生10个最新鲜的备份压缩包,将旧的删除。然后在服务器B上面进行FTP批处理操作,但只下载服务器A上面最新的一个备份压缩包,然后在服务器B上同样的只保留最新的10个文件,这样就达到了较理想的效果了,或许还有其他办法,但这方法够用了。

伤神的事情也就结束了。^_^

Leave a Reply

(will not be published)