新聞中心
無憂主機原創(chuàng):非常規(guī)手段解決Discuz X2遷移導(dǎo)致MYSQL數(shù)據(jù)庫中文表亂碼的途徑
起因: 三天前,我公司客戶使用香港獨立IP空間,從一個windows環(huán)境下的php虛擬主機下遷移discuz X2站點。遷移中發(fā)現(xiàn)恢復(fù)的mysql數(shù)據(jù)庫表中所有中文亂碼顯示,影響遷移結(jié)果。且原始空間上的原始數(shù)據(jù)也是亂碼,但是前臺網(wǎng)頁顯示正常。起mysql數(shù)據(jù)庫版本為:mysql 4.X。遷移要從mysql數(shù)據(jù)庫4.X版本向mysql5.X版本遷移??蛻魺o任何歷史網(wǎng)站數(shù)據(jù)備份(DX后臺的備份也沒有),原始空間已經(jīng)刪除了客戶的空間,只有原始空間商提供的mysql數(shù)據(jù)庫源文件和discuz X2網(wǎng)頁文件。 我的感概: 我很難想象,到現(xiàn)在居然還有mysql4.X版本的php空間存在。也很驚訝DX2居然在這樣的環(huán)境下安裝并運行了半年時間之久。也很驚訝,為什么用戶在部署的時候沒有發(fā)現(xiàn)數(shù)據(jù)庫中存儲中的內(nèi)容是亂碼?原始空間商告訴他,你現(xiàn)在的中文亂碼情況、需要你進(jìn)行轉(zhuǎn)碼導(dǎo)入,或者安裝一個mysql4.x版本,將數(shù)據(jù)庫源文件導(dǎo)入,然后再導(dǎo)出正常備份文件,最后再導(dǎo)入到mysql5.x中。 由于原始空間商已經(jīng)刪掉了用戶的空間,但mysql數(shù)據(jù)庫沒有刪除,協(xié)商下給了mysql數(shù)據(jù)庫遠(yuǎn)程方式地址和信息。 用戶發(fā)了2天時間解決這個mysql數(shù)據(jù)庫亂碼問題,我也不斷與客戶溝通,從中協(xié)助,利用休息時間也來幫助客戶完成這個工作。我們努力將mysql 4.x數(shù)據(jù)庫向mysql5.x遷移,并解決mysql數(shù)據(jù)庫中文亂碼問題。很遺憾,能力有限,我失敗了。 事后諸葛亮: 我今天突然想到一個方案,搶救myql數(shù)據(jù)庫數(shù)據(jù)庫。 用戶手上有原站點的dx網(wǎng)站的網(wǎng)頁備份數(shù)據(jù),原始空間提供了mysql數(shù)據(jù)庫的遠(yuǎn)程訪問地址。那么我的方案如下: 1、? 把dx站點的網(wǎng)頁數(shù)據(jù)完整的上傳到無憂主機(www.gle-technology.com)空間的站點根目錄——public_html。 2、? 然后將域名解析到無憂空間服務(wù)器上。 3、? 原始空間開放了mysql數(shù)據(jù)庫的遠(yuǎn)程登錄方式、用戶網(wǎng)站停止前是正常運行的、phpmyadmin雖然顯示是亂碼,臨時我們可以不去關(guān)注它。基于上面三個條件,那么用戶的dx網(wǎng)站就是這樣方式部署的: Dx的網(wǎng)頁程序運行在無憂主機(www.gle-technology.com)的環(huán)境中,而mysql數(shù)據(jù)庫遠(yuǎn)程調(diào)用原始空間商提供的數(shù)據(jù)庫。 這樣的方式部署是可行的,只要域名解析生效,網(wǎng)站就可以正常打開。此時登錄dx2管理員后臺,使用康盛提供的mysql數(shù)據(jù)庫備份工具進(jìn)行全站備份。備份完畢后。接下來按下面步驟操作: 4、? 在無憂主機虛擬主機環(huán)境下的站點根目錄下(public_html)新建二級目錄—— bakweb,將所有文件移動到bakweb目錄中。 5、? 上傳dx2.0安裝包(和原站點版本保持一致),然后全新安裝discuz!X2。 6、? 將原始站點用dx2備份數(shù)據(jù),移動到新安裝的dx版本中進(jìn)行恢復(fù)。無論好壞,你都可以拿到一份完整的mysql數(shù)據(jù),我相信康盛后臺自帶的數(shù)據(jù)庫備份、恢復(fù)工具,可以為我們帶來一份正常、且完整的網(wǎng)站數(shù)據(jù)庫。 今天晚上,我興奮的將我的方案告訴用戶時,很遺憾。用戶已經(jīng)放棄原始數(shù)據(jù),已經(jīng)全新的把網(wǎng)站部署好了。 上述方案,我個人認(rèn)為可行性是非常高的,成功率保守估計在90%以上。如果你也在為mysql數(shù)據(jù)庫亂碼問題苦惱的時候,不妨換個思路,用我這個思路去嘗試解決。 本文章中介紹解決mysql數(shù)據(jù)庫亂碼的方案,未經(jīng)過實踐證明。如有采納的站長,請來個郵件340555017@qq.com告知一下,不甚感激。本文僅此紀(jì)念這個想法,我給它取了一個名字:亂七八糟非常規(guī)手段解決mysql數(shù)據(jù)庫中文亂碼的途徑。 感謝閱讀本文,感謝使用無憂香港系列php空間。 純Linux環(huán)境下高端免備案[香港獨立IP地址]?php空間,僅僅只需199元一年起。商務(wù)中國域名核心代理直銷50元注冊國際頂級域名。
本文地址:http://www.gle-technology.com/mysql/4013.html