我想设置一个临时服务器来对我的网站进行最终测试。临时站点的数据库正在复制生产主 mysql db 以反映真实环境。
如果部署仅包含代码更改,则很容易先将其部署到暂存区,然后再部署到生产环境(如果它足够稳定)。
但是,如果部署包含数据库更改,如何在不影响 master 数据库的情况下将其部署到 staging 但仍保持与 master db 的实时同步?
编辑:
如果做不到。如何使数据写入登台服务器“不丢失”?如果某些用户使用测试版站点,我不希望在暂存最终稳定时丢失他们的数据。
我想知道 facebook 或 google 如何在不丢失 beta 测试者数据的情况下推出他们的新功能?
pjm*_*rse 11
你不能。
我的建议是不要将生产复制到登台,而是偶尔使用您的生产备份文件之一重建登台数据库。然后您正在处理生产数据(尽管是几个小时或几天前的),但您在暂存时所做的更改不会影响生产。
编辑:通过您的编辑,现在这是一个截然不同的问题。
如果您有 beta 测试人员使用您的临时服务器并期望他们的数据投入生产,那么这不是临时服务器:它是生产服务器。我认为这是使这个问题难以回答的基本概念转变;我们中的大多数人(我认为)认为登台服务器是一个草图,可以无所畏惧地转储和重建。如果您计划允许某些用户对您的更改进行 Beta 测试并在您投入生产时保留他们的数据,则您需要一个不同于暂存/生产的框架。
EDIT2:这里有一些处理这种设置的堆栈溢出问题:
| 归档时间: |
|
| 查看次数: |
4167 次 |
| 最近记录: |