我们有很多的客户拥有良好的备份,但它们和网站在相同的数据中心,甚至和主要数据在同一台服务器上。这很危险,我们不推荐这么做,因为数据中心可能发生很多糟糕的事情,而一旦发生则往往意味着业务的结束。

现代数据中心是个伟大的地方,但不好的事情还是会偶然发生,其中包括,尤其是火灾,但也存在地震、水泄漏和其他问题,特别是在一些比较旧的建筑里。而且,盗窃有时会发生,其中某台服务器可能会带着您的数据溜出大门。

此外,如果黑客进入了您的服务器,他可能会删除或损害您的数据,然后删除您的备份。这可能意味着您公司的结束。

所以虽然同一个IDC或者同一台服务器的本地备份,在意外删除或数据库损坏时,能帮助您快速恢复,但它不能保护您免受实际的和可能致命的数据丢失。因此,您需要在异地备份数据的副本,比较理想的是每周一次。如何做到这一点?

通 常情况下,对小型系统来说简单而清晰,只要压缩数据,并且通过sftp、rsync等方式将它推送到别的地方即可。那个 ‘地方’ 可以是有着良好带宽的另一个数据中心,或者您速度很快的办公室。现在越来越受欢迎的是像S3这样的在线存储系统 (如亚马逊和中国阿里云的开放存储),它可以提供无限的存储空间(当然需要您付费),可靠、灵活,且易用。

但是,每天或每周需要推送异地的备份往往都太大了。在这种情况下,我们帮助客户提供不同的解决方案,譬如将数据分类成图像、视频、用户数据、历史数据等,然后在这一周中的每一天发送其中的一部分。

其 他方法包括做每月或每周的全备加增量备份,或使用各种技术来进行同步或复制不同类型的数据。每个系统,从图像、数据库,到日志文件通常都需要一组不同的工 具或方法。有时我们会忽略不重要的数据,只在异地备份关键的用户和财务数据,而物理磁带或磁盘驱动器的离线备份则可能是备份TB级别数据的唯一方法。

最好的备份策略是,服务器可以将其数据推送到远程备份服务器上,但是写入后不能删除或更改。这可以防止黑客删除备份,还可以避免由备份系统本身或其它问题引起数据的破坏。

通 常因为需要使用最新的数据用于测试,所以开发系统往往是一个受欢迎的备份数据的地方。但是,原则上您应该在生产数据加载到开发/测试系统之前清理或删除上 面的用户个人信息,从而保护生产数据的私密性,防止数据被窃取。因此,测试的最佳做法是将数据备份到您的办公室,选择较新的一份,去掉需要保护的数据,再 加载到测试系统中。

无论如何,从站点带出去的任何数据都应该进行加密。我们再怎么强调这点都不够,近年来因为忘记这个关键原则,已经有太多的私有数据损失或被窃。您可以使用想到的任何加密方式,但要确保能够快速地加密大量数据。不管怎样,加密总是需要的。

当 然,如果您忘记了密码/口令,或者输入错误,那么加密就毫无用处,所以您始终应该定期地测试解密,譬如每月或每季度。这在备份目的地上很容易完成,例如解 密/解压缩,并阅读tar文件的头部 — — 这可以是非常快的,因为无论文件多大,都只需要读取它最初的几KB内容。

最后,一定要测试您的备份。只有在您可以找到它,解密它,使用它来恢复的情况下,一个备份才是有用的。而能确保这点的唯一方式,就是定期地,至少每个季度在一台测试机或者虚拟机上运行整个恢复过程。

做到这一切以后,您就可以睡个安稳觉了,因为您的数据是安全和可靠的。