运营把白银门槛从 1000 分改成 2000 分,第二天后台多出 4300 个降级账号,客服电话被打爆。第一次遇到会往复杂处想,其实漏掉的多是个小前提。
wp db export backup_before_level.sql SELECT level, COUNT(*) FROM wp_users GROUP BY level;
新规则只改了配置,存量用户的等级字段没做迁移。重算脚本按新阈值全量刷了一遍,没有过渡期也没有版本标记。这一点先确认清楚,后面就不用反复试。
碰到「等级规则迁移」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。
动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。
具体做法是,改规则前先导出等级字段和累计积分留底;给规则加版本号,迁移只处理旧版本数据;老用户按就高原则保留原等级,设 30 天缓冲;迁移先在测试库跑,比对降级人数再上生产。
改完照着核一遍,迁移后降级人数为 0,新注册用户按 2000 分门槛计算。
