作为系统管理员,备份是必不可少的工作。但是备份一个网站(例如 StackOverflow)有多难呢?
您只需要备份 dll、html、js、php、web.config、.htaccess 等,然后为数据库架构和纯文本数据生成 SQL 脚本。最后将所有这些文本存储在远程站点上,就这么简单。
同样,恢复也应该很容易。如果出现任何问题(例如 SQL 脚本损坏),您仍然可以手动更正它。
我对吗?
我在问我的备份策略是否合理,所以肯定有一个问题
答案1
正如沃姆布尔所说,是又不是。
举个例子:我们有几个基本的(说得客气一点)电子商务网站,都是通过将 WordPress 这个方枘敲入我们业务需求的圆孔中而创建的。我们获取了 /srv/www 和 /etc 内容的副本,以及 MySQL DB 的转储,一切顺利(是的,我已经运行了测试恢复!)
另一方面,我们的主要网站在六台服务器上运行(3 台 Web 服务器、2 台 DB 服务器和 1 台发布服务器/负载均衡服务器)。不过,我们备份所需的只是网站代码/文件(全部在 SVN 中,从我们的开发服务器备份)和来自其中一台 DB 服务器的转储(它们都是相同的;复制伙伴,为我们提供一些冗余)。
这两种方法没有优劣之分,我只是强调你应该只备份你需要的内容;主站点的备份占用空间约为 4GB,而备份所有相关服务器则需要数百 GB。我们还可以通过部署新服务器并将数据/文件重新粘贴到这些服务器上来更快地进行恢复,而恢复六台服务器的数据则需要更快。
答案2
我对吗?
是……也不是。当然,只需复制网站涉及的每部分数据即可。但这些部分是什么?您怎么知道您拥有它们?考虑到网站会随着时间不断变化,您如何确保所需内容列表保持最新?
正如 Keiran 在问题评论中暗示的那样,测试恢复是唯一可以确保的方法,而成本(额外的硬件和软件许可证)、麻烦(恢复需要相当长的时间)和 IT 人员的自然乐观主义[1] 共同作用,使恢复测试变得非常,非常低优先级。
[1] 我坚信,任何一个内心不乐观的人,在这个行业工作 15 分钟后,就会觉得自己的后脑勺被炸飞了。