我有一个运行Windows Server 2012的Web服务器,其中有三个主要的东西:
今天我发现,在过去的一年里,我一直忙于开发,所以我没有想过支持任何东西 – 幸好今天发生在我身上,而不是服务器崩溃之后!
我想知道在这三个不同的事情上每晚做一个备份最好的方法是什么。 我想我可以:
创build某种“磁盘映像”,这将是很好的,因为我可以存储的图像,如果发生灾难性事件,很容易恢复到昨天的数据,但我只创造了个人使用的磁盘映像,如果我的驱动器是1TB ,形象是1TB – 我不知道这是否是唯一的办法,但我不知道我有硬盘空间做这个夜间。 另外 – 我只有一个服务器,2个驱动器,所以我不知道我甚至会支持这个。 如果这是最好的select,我会find一个方法来使其工作。
我可以编写一个脚本来每天晚上复制所有的网页文件(php,html等),编写一个MySQL备份脚本比较容易,但是search网页来备份solr并不是那么直截了当。 当然,我想我可以弄清楚,然后把这三件事情单独回来,但如果有什么事情发生,有人可能很难把这些数据还给公司。
有(总是)第三个选项,我没有看到
有很多应用程序可以为备份SQL,文件,系统状态或简单的文件级备份做出惊人的工作,尤其是对于Windows。 我会build议使用cloudberry或其他一些你select的软件包来取代备份中的人为因素。 备份sql数据库,系统状态并select文件/目录,包括solr索引文件夹。
SQL脚本备份计划和使用任务计划程序执行的批处理脚本(如您在您的问题中似乎提到的)的组合也可以工作。 但是,如果你走这条路线,确保你经常检查它,或者使用像vbackup这样的实用程序,让你自己做一些日志! 如果你愿意的话,我可以提供我用过的示例脚本。
编辑:要更彻底地回答你的问题,利用诸如Cloudberry等应用程序将允许压缩,encryption和低得多的带宽需求。
欢迎来到备份世界Brian! 前一段时间,我认为我是在自己的位置上,因为备份是浪费时间,也许是金钱,但是一旦被咬了,你就进入了这个地步!
我认为您需要基于VSS集成的映像备份,以保证数据和备份的一致性。 有许多解决scheme可用于各种选项,价格等。
你只需要考虑一下:
1)存储,基本上你需要保留你的备份(例如现场或离站=>在云端)2)RTO,RPO =>考虑数据丢失量(这实际上使你的备份频率和日记)和恢复速度(例如,恢复数据的速度取决于具体情况) – 都会制定整体保留策略。 3)解决scheme。 我尝试过不同的,从头顶上我可以build议以下:Cloudberry备份,Veeam端点,Crashplan和一些其他人。 4)你需要什么恢复选项(基本上你想保护自己的forms,例如整个计算机,几个文件,mysql事务/数据库/实例/回滚等选项)。 这一切基本上应与#2 RTO一起考虑..
以上四件事情想一想,做出决定。 是的,备份是非常重要的,特别是当你开始丢失你的数据时,所以你处于抢先位置! 备份是你的保险。
如果所有的应用程序都停止了,磁盘映像将工作 – 否则,当您执行转储时,您不知道是否有待处理的未完成事务。 如果你不需要恢复整个事情,这也是一个缓慢的恢复方式。
MySQL转储很容易,基于文本的文件(自动git推git是一个好主意)。 对于solr,看起来好像有一个可以调用的备份URL,但是我只能在Elasticsearch下使用它,所以YMMV。
我会build议分开备份每个项目。 这样,如果只有一个项目出现问题,您只需要恢复该项目…
这听起来像是你在正确的轨道上的Web内容备份,但对于SQL我build议使用MSSQL服务器(而不是任务调度程序)的作业function。 这给你一个工作运行状态的历史的额外好处。 https://blogs.msdn.microsoft.com/sqlagent/2010/10/12/create-a-database-backup-job-using-sql-server-management-studio/