对这次丢失数据的总结
先说下这次 T0 级事故的发生过程。
youbbs 的源码是有记录发帖 ip 和回帖 ip 的,2049bbs 在10月份之前只是在前台隐藏了 ip,但是数据库中仍然在记录。10月份,我修改了程序,因此10月份后的发帖和回帖均不会记录ip。
前情回顾:
- https://2049bbs.xyz/t/1521
- https://2049bbs.xyz/t/1506
但是历史数据中的 ip 如何处理呢,如果是 MySQL 数据库,也就是一行 SQL 的事情,但是 youbbs 使用的是一种嵌入式kv数据库,这玩意儿没有 SQL 接口,我也从来都没用过嵌入式 kv 数据库。花了几天时间,看了下文档,写了个脚本,专门去除历史数据中的ip。(脚本地址 https://paste.gg/p/anonymous/89fbcf15fd9f41dcbc691a0a319edf93 )
一切顺利,我把清除ip后的数据库替换掉,并且测试网页一切正常。于是我就开开心心地出去吃大餐了。
万万没想到,忘记重新启动程序了。因此,当今天我更新程序,重新启动时,白天的所有数据写入失败……丢失了整整一天的数据!
罪过罪过……原谅一个 go 小白的无知
我还以为。。。我穿越了。。。
所以有几个帖子没了就是因为这个呗?
恭喜完成隐藏任务:找到月关宝盒回到一天前改变历史…
https://github.com/2049bbs/2049bbs.github.io
备份站终于有用了! 丢失的数据在备份中应该还能找得到很多。
丢失的帖子找到一个
https://raw.githubusercontent.com/2049bbs/2049bbs.github.io/681b/_posts/2019-11-13-1792.md
哦哦,原来如此,晓得了
一看我发的陈秋实那文不见了,还以为出大事了,站长被,被,被五毛控制了。:)
吐槽类别是不是应该挪到水区?
humm,应该是楼主对于 生产服务器和实验服务器 的操作的流程有什么误解或者压根就没有 此类风险意识。 就当买了个血的教训咯,下次遇到类似的问题,数据库的备份,服务器的切换,以及永远不要热操作都是宝贵的经验和教训