从X3.4升级到3.5,是个折磨的过程。涉及到从GBK转码到UTF-8,对数据库的操作是彻底的,中间反复了十多次才最终成功。总结如下几个务必注意的几个问题:
5 Z6 e6 K+ b; K3 v
3 I6 A) ]; o3 j% K. r7 G; _7 b, _+ @7 M( {" N8 l' X
1、严格按照官方教程操作,中间不要有任何多余步骤,尤其是是升级UCenter到1.7.0成功后,不要通过浏览器访问论坛程序,否则极易导致数据库出错从而升级失败。: y" G0 b, ?8 r. ~0 j
! L+ w6 d- X& f& g5 V# x7 \0 G2、最好卸载所有非官方插件、卸载所有不适合于X3.5的插件,并更新缓存、校验数据库,在保证X3.4的数据库无误的前提下再升级。4 c7 q4 S7 R' I7 c* P# T# m
0 o% t2 ]' o6 g1 e/ R% {: K
3、升级一旦卡住,只能清空数据库,导入原来数据库后,再依次重新升级UCenter、DX,所以务必做好X3.4的程序文件和数据库的备份,以便随时恢复。. J+ g9 b9 Y2 I1 p6 r, p r" t
" d) Z# r5 [6 B4 @1 `; q5 p C [( V5 N0 K
4、升级Ucenter到1.7.0之前,最好先查看X3.4的数据库的pre_ucenter_members数据表,在phpmyadmin里点击该数据表,点击“结构”,在mail字段的最后点击修改,为其添加索引(如果已有索引,不可重复)。4 S1 ], V+ A; ~* t: }, z
s( E1 W- q# o F4 d% o
5、数据库里如果有非官方插件添加的数据表,因为目前绝大多数插件尚不支持新版dx程序,所以最好都删除掉。当然,理论上应该不会影响升级。
- |8 y- Z4 e ?% K
6 Z9 S: B: @' q; ?/ {9 D* k6、Ucenter的升级通常比较容易成功。如果有其他问题,先到官网搜索解决办法。如果成功了,严格按照官方教程进行下一步,不要有任何其他操作!一旦访问网页程序,可能导致对数据库有读写操作,极易出错,导致UC与dx通信失败、涉及文件检测环境“不满足”等。这种情形,在官网论坛有一些修改方法,但通常可能只有重新操作,才可能成功,修改config等配置文件很可能最终还是失败。
O6 R6 W! u/ O! j) ]7 [2 S6 G# A" f4 b! f) n- f
7、因为数据库较大,曾经做过“帖子分表”操作的,一旦运行DX3.5的升级文件,可能会遇到某些字段不唯一、未设置主键等数据库问题,从而导致升级失败,只能从头再操作。所以,对于分表,最好是有提前操作,并重启MySQL服务或重启服务器,保证改动生效。
- K3 k( J7 U9 L' x- c7 _6 _% x- #在数据库中选中帖子分表对应的数据表pre_forum_post_1(主表没有_1后缀)执行SQL语句命令:
) P M: h, R8 ?8 r; }- _9 p9 L9 W: b - ALTER TABLE pre_forum_post_1 MODIFY COLUMN position INT unsigned NOT NULL DEFAULT '0'
复制代码 8、之后再运行dx升级程序,通常检测通过,一路绿灯。之后最好重启服务器,以便更新所有与网站有关的缓存,保证后续操作的效果。
, A. ^' n+ H- I- a0 u, [- C0 k8 p3 f7 |" }
9、升级DX3.5成功后,先访问UC后台,确认通信成功后,再通dx后台进行其他操作。1 p0 q* b2 K5 Y2 M
% s- ~+ ?! n: l* K* w
希望后来的站长们少走弯路……- S" g# y6 m1 b/ P6 w- P9 g3 H
|