Discuz論壇從X2升級到X2.5時陷入死循環的解決辦法 |
發布時間: 2012/8/28 19:18:58 |
昨天把我的一個dz論壇從X2升級到X2.5出現了問題,升級陷入死循環,具體提示如下:![]() update.php?step=waitingdb&nextstep=prepare& sql[]=5786554789722f09b8f635c20410e507&sql[]= [ee4f20b8582052367f5beb9bd19fea58]正在升級數據,請稍后。。。 [時長]:113[狀態]:copy to tmp table[信息]:ALTER TABLE pre_forum_post ORDER BY pid ASC [時 長]:113[狀態]:Locked[信息]:ALTER TABLE pre_forum_post CHANGE `pid` `pid` INT(10) UNSIGNED NOT NULL, CHANGE `replycredit` `replycredit` int(10) NOT NULL default '0', CHANGE `status` `status` int(10) NOT NULL default '0', ADD UNIQUE KEY pid (pid), DROP PRIMARY KEY, ADD `position` INT(8) UNSIGNED NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY(`tid`, `position`), DROP INDEX authorid, ADD INDEX authorid (authorid,invisible) (跳轉中。。。) 去DZ官方論壇查找,發現好多人都遇到這個問題,官方也沒有給予解決。由于以前經常升級DZ所以這次沒在意,也沒有備份數據庫。現在是返回X2也返 回不了了,只能想辦法升級到X2.5 。于是仔細分析了一下SQL語句,發現升級post數據時便無法前進,原來原因出在這。找出原因后,果斷的登錄phpadmin進入論壇數據庫。 數據庫有兩個,第一個information_schema可不是論壇的數據庫,第二個才是。點擊論壇數據庫進入后進入表結構,把頁面拉到最下面點擊全選,然后在選中項選擇修復表,然后是提示sql語句成功,然后再點擊全選,在選中項選擇優化表,提示SQL語句成功。 ![]() 第一步完成了,還有一個重要的一步就是刪除 install 目錄中的index.php,這個官方有說明,很多新手不知道。 然后清空瀏覽器緩存后重新升級發現升級成功,不再陷入死循環。 寫在最后忠告:dz升級時一定要備份數據庫,按照官方提示一步步操作,不要急于求成。另外dz出新版本時不要急于升級,等出了正式版穩定后再考慮升級。 本文出自:億恩科技【www.vbseamall.com】 |