如何为开发、测试和生产环境安排备份



我在自学网站发布的相关知识。我阅读这份文件是为了为我未来的网站发布准备一份实施检查清单。

在第11页,他们提到

为开发、测试和生产环境安排备份

我可以想象备份数据库和网站代码。

如何自动化并安排整个x、y或z环境的备份

如果这是一个非常宽泛的问题,那么我不需要循序渐进的文件来做这件事。也许一些起点可以帮助我想象这已经足够好了。

更新:

我已向万神殿发出询问,期待他们的回复。

这一切都取决于您如何设置环境,它们有多复杂,以及您试图备份什么。

您的环境多久更改一次?

您可以使用Docker之类的工具来跟踪环境的变化。它基本上为您提供环境的版本控制。

如果您使用的是像DigitalOcean这样的托管提供商,他们会提供整个虚拟映像的快照和备份。

阅读有关rsync的信息-https://wiki.archlinux.org/index.php/Full_system_backup_with_rsync

如果手动跟踪所有配置文件并自己处理调度和同步,则可以使用rsync。

至于实际站点:

你的网站发生了什么变化?

对于网站代码的更改,您应该使用版本控制,以便将每一项更改备份到Github等存储库中。

不过,大多数时候,唯一发生变化的是数据库中的数据。您的数据库可以由提供自动备份的第三方(如Amazon RDS)轻松管理。如果您想在自己的服务器上管理自己的数据库,那么您可以使用cron作业在计划时间自动执行数据库备份。然后,您可以使用rsync将备份同步到一台单独的机器上。(您希望将备份分散在不同位置的几台机器上)

您可以定期运行cron作业来备份数据。最重要的数据可能是事务信息,也可能是整个数据库本身。

代码,您可以在开发人员端使用github进行管理。但是,如果你有某些文件夹是由网站用户填充的,那么也要计划备份这些文件夹。

最新更新