首先这个错误是大家经常遇到或者看到其他网站出现的一个问题,解决办法很多站长也都知道并且可以熟练解决,但是这问题是因为什么产生并且为什么会不断出现的呢?

出现这个错误的原因是 Discuz! 程序认为网站已做用户表优化, 在注册/更新缓存等工作时就会去读取这个表, 而网站实际是没有正常优化过用户表的, 就没有正常创建这几个新表, 导致错误.

解决方案是 DELETE FROM `pre_common_setting` WHERE `skey` = ‘membersplit’; 这个是大家耳熟能详的解决方案。而在执行后还会不断出现这个错误的原因是很多从低版本升级至高版本的论坛在计划任务中勾选了每日用户表优化这个功能, 而实际在 X2.0~3 中未到达条件的网站是不勾选优化的.

所以当遇到这个问题时执行 sql 语句并去掉计划任务中每日用户表优化的勾. 并更新缓存. 这样就不会再次出现了。