# 如何回滚部署，同时保留较新的数据？

Canonical URL: https://help.iagenify.com/zh/faqs/hosting/how-can-i-roll-back-a-deployment-without-losing-newer-data

[← 返回托管常见问题](https://help.iagenify.com/zh/faqs/hosting)

帮助中心 · 常见问题 托管 1 分钟阅读
# 如何回滚部署，同时保留较新的数据？
代码回滚会恢复较早的应用版本，但不会自动撤销数据库、存储或外部服务的变更。应保持应用版本与数据迁移兼容，使代码恢复时仍能保留新版本产生的有效数据。
IaGenify
托管

## 区分代码回滚和数据恢复
部署前识别所有有状态变更：数据库架构、后台任务、对象格式以及外部 API 副作用。优先采用可逆或向后兼容的变更，并记录各版本可以安全读取的数据格式。
如果迁移具有破坏性，执行前先创建并验证恢复点。恢复整个数据库快照可能会覆盖快照之后的有效写入，因此应与向前修复或针对性修复进行影响比较。
## 按受控流程回滚
选择已知稳定的上一版本，切回流量，并确认健康检查和核心用户流程正常。暂停不兼容的工作进程或定时任务，避免旧代码处理新格式的数据。
服务稳定后，核对事故期间创建的记录和后台任务，并记录原因与防护措施。定期演练回滚流程；仅有旧版本构建产物并不能证明服务可以安全恢复。 [← 返回托管常见问题](https://help.iagenify.com/zh/faqs/hosting)
