该文为个人修复数据笔记,不具有任何相关小程序参考意义,阅读请斟酌。
本文背景
我目前运营一个考研答题小程序,按科目维度组织的答题题库,这个小程序目前存在一个问题,经常有用户反馈,某一科目不能进入答题,这个问题始终没有定位到问题根源,以至于每次都要手工通过数据修复来解决用户的问题
本文内容
本文主要讲述具体数据修复的过程,该修复具体涉及以下三个集合
1、exams
2、historys
3、locks
这三个集合分别是答题记忆集合、答题历史集合、科目锁定集合,分别从不同维度来记录用户答题的细节,
这三个维度分别是具体某个答题、具体某次答题、具体某个科目
问题描述
点击科目不能正常进入答题
数据修复过程
1、根据科目定位到科目id;
2、根据科目id找到该用户的答题历史,删除状态为0的记录;
3、修复locks,将状态修改为0;
4、清理exams该用户的相关数据;
截图一
截图二
本文总结
本文主要描述某答题小程序具体修复的记录,该文章主要用于我对修复过程的一个回顾以及总结,总结不是目的,希望尽快能定位到问题根源
修复脚本
脚本一
db.collection('locks') .where({ _openid: 'om9ws5OPa4bLV_cQtJpec5-QeWs4' }) .update({ data: { status: 0 } })
脚本二
db.collection('exams') .where({ _openid:'om9ws5OPa4bLV_cQtJpec5-QeWs4' }) .remove()
脚本三
db.collection('historys') .where({ _openid:'om9ws5OPa4bLV_cQtJpec5-QeWs4', status: 0 }) .remove()
依次执行以上三个脚本即可
感谢分享。
建议你从源头上找找为啥为出现数据需要修复的情况?