# 数据同步 · 迁移手册(O7) > 从旧路径 `online_primary`(HTTP 双写)迁到 `local_dbsync`(松离线 + agent)。 > **禁止静默迁移、禁止全员一刀切关双写。** ## 硬规则 1. **旧客默认不变**:未评估、未签字前不得改默认模式。 2. **同表互斥**:某表不得「一边 HTTP 双写、一边进 dbsync 白名单」。 3. **顺序不可颠倒**:先停该表双写 → 再进白名单 / 切 `local_dbsync`。 4. **agent 非安装强依赖**:迁移观察期允许只落本地 + 积压;须告知「需 agent 才上云」。 ## 推荐流程(单表 / 单库) | 步骤 | 动作 | 验收 | |------|------|------| | 1 | 智建通道准备:目标表白名单、UUID PK 校验通过、remote DSN 可达 | 保存通道成功 | | 2 | 客户端仍 `online_primary`:对该表**停止**双写(或从双写表白名单移除) | 该表仅写本地或仅走约定路径 | | 3 | 观察 ≥1 个业务周期:无双写残留、无重复行 | 抽查线上/本地主键 | | 4 | 显式设 `YXD_SYNC_MODE=local_dbsync`,写入表白名单缓存/通道拉名单 | `/sync/status` 显示 local_dbsync | | 5 | 登记 Binding(可选)`local_database_id → online_db_id` | GET bindings 命中 | | 6 | 装本机 agent,观察 outbox 清空、同 UUID 上云 | agent push 成功;超管可查 LWW(若有覆盖) | | 7 | 确认稳定后再扩大白名单;**勿**对全员默认切模式 | 旧客未改默认 | ## 回滚 1. 客户端改回 `online_primary` 或 `local_only`。 2. 智建侧可停通道 / 缩表白名单(勿删线上数据)。 3. 未推完的 outbox 由对方客户端自行处理;平台不强制清。 ## 新客评估(M4) 仅对**新客**或**书面确认的迁移客**评估是否默认 `local_dbsync`。 M4 前:**禁止**全员切默认。 ## 相关 - [数据同步-开通说明.md](./数据同步-开通说明.md) - [同步表约定.md](./同步表约定.md) - 冻结方案:`松离线-dbsync方案-最终版.md` §8 / O7