bbs升级至X3.2后楼层乱掉的问题修复

简介: 前言:         某论坛因性能不佳,升级到了X3.2版本.但是升级后却发现楼层乱了.仔细研究了一下发现,cdb_forum_post表新增了position字段,并且是自增属性.

前言:    

    某论坛因性能不佳,升级到了X3.2版本.但是升级后却发现楼层乱了.仔细研究了一下发现,cdb_forum_post表新增了position字段,并且是自增属性.抽查帖子时,这个position字段不是按照1 2 3 4自增的,而是1 3 5 7 9这样的序列.
     导致这个问题的原因是mysql服务器是M-M架构,并且使用了如下两个选项来保证两个M不冲突:
auto-increment-increment = 2
auto-increment-offset = 1
于是我们的position自增时也根据这个属性来自增了.
下面就是针对此问题的处理过程.

处理步骤:

1.先在服务器上取消这两个参数

2.查找下数据库中有没有position是偶数的:
SELECT distinct tid FROM cdb_forum_post WHERE MOD(POSITION,2)=0;

3.把这些帖子的所有内容都移到临时表,后续对这部分帖子进行手工处理.

4.先处理position都是1 3 5 7这样增长的帖子:
为加快执行速度,可以对position增加索引,处理完后再删除索引.
for ((i=3;i 备注:这个i
5.手工处理刚才那个临时表中的position,然后再把这部分帖子灌回cdb_forum_posts.参考SQL如下:
update tmp_table set position=(position-1)/2+3 where tid=331335 and position>=7;
update tmp_table set position=(position-1)/2+28 where tid=362515 and position>=55;

6.使用下面的SQL处理最大楼层数和回复数:
update cdb_forum_thread a set maxposition=(select max(position) from cdb_forum_post b where a.tid=b.tid);
UPDATE cdb_forum_thread SET replies=(CAST(maxposition AS SIGNED)-1) WHERE CAST(replies AS SIGNED)!=  (CAST(maxposition AS SIGNED)-1) and maxposition>0;

现在看看楼层是不是正常了.
相关文章
|
2月前
|
SQL 关系型数据库 MySQL
(十八)MySQL排查篇:该如何定位并解决线上突发的Bug与疑难杂症?
前面《MySQL优化篇》、《SQL优化篇》两章中,聊到了关于数据库性能优化的话题,而本文则再来聊一聊关于MySQL线上排查方面的话题。线上排查、性能优化等内容是面试过程中的“常客”,而对于线上遇到的“疑难杂症”,需要通过理性的思维去分析问题、排查问题、定位问题,最后再着手解决问题,同时,如果解决掉所遇到的问题或瓶颈后,也可以在能力范围之内尝试最优解以及适当考虑拓展性。
124 3
|
运维 监控
WGCLOUD运维监控方案 - 如何设置主机10分钟内恢复正常就不进行提醒
这个,我们只要把agent上报时间改成10分钟就好了
|
数据库 Android开发 数据库管理
Android 天气APP(二十)增加欢迎页及白屏黑屏处理、展示世界国家/地区的城市数据
Android 天气APP(二十)增加欢迎页及白屏黑屏处理、展示世界国家/地区的城市数据
176 0
Android 天气APP(二十)增加欢迎页及白屏黑屏处理、展示世界国家/地区的城市数据
|
监控 iOS开发
APP - APP监控软件,美团 24 小时不间断定位上热搜
APP - APP监控软件,美团 24 小时不间断定位上热搜
296 0
APP - APP监控软件,美团 24 小时不间断定位上热搜
|
缓存 NoSQL 关系型数据库
语音聊天系统,问题分析是找到解决方法的关键
语音聊天系统,问题分析是找到解决方法的关键
|
运维 监控 数据可视化
不改一行代码定位线上性能问题
性能问题。 大致的现象是: 我们提供出去的一个 OpenAPI 反应时快时慢,快的时候几十毫秒,慢的时候几秒钟才响应。
|
Arthas 弹性计算 监控
走完线上 BUG 定位最后一公里
因为线上线下环境隔离的问题,线上的输入很多时候难以在日常环境中构造,定位 bug 效率低下。是否有简单快捷的办法呢?
3811 2
走完线上 BUG 定位最后一公里
|
监控 安全
您的url被百度杀毒提示存在网址安全风险,故物料不宜推广的解决办法
春节刚过完,上班的第一天,公司网站被百度停止推广了,百度推广提示:您的url被百度杀毒提示存在网址安全风险,故物料不宜推广;若有异议,请进入百度杀毒申诉通道申诉。第一时间联系了当地百度公司客服,客服帮我们查看了下百度那面反馈的邮件后,说是由于我们网站内容被篡改,导致存在网址安全风险,因此百度推广不让上线,对于我们公司网站产品的推广带来了很大的影响,老板立即把我叫到了办公室。
2355 0
|
Web App开发 Windows
IE9最终版透露IE10信息 或将自动在线升级
IE9才刚刚发布几天,互联网上已开始了对IE下一个版本的猜测。 今天,在IE9最终版里发现的一些隐藏资源显示,微软已有了对IE10的预先计划。俄罗斯网站TheVista.ru披露了一个提及IE10的对话框,内容如下: “Internet Explorer 10已可使用、立即将IE9在线升级到IE10,体验更快、更清洁、更值得信赖的上网浏览。
808 0