[問題] MySQL 4.0升級至4.1,有關utf8資料的問題

phpBB Installation & Usage Support
phpBB 2 安裝於各類型作業平台之問題討論;外掛問題,請到相關版面依發問格式發表!
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

文章 brentsu »

請參考這篇看看對你有沒有幫助?

Mac 版本的 MySQL 的 Backup 與 Restore 不支援 UTF-8?
http://www.bnw.com.tw/conference/viewtopic.php?t=43

Windows與Linux環境應該也差不多。

我對 MySQL 不能把備份的資料直接回存到現在的資料庫,非常感冒~要 Restore 還得先把舊版資料庫幹掉,重建一個新的....
而且也沒有自動定時備份功能,更是感冒 ><"
※架設伺服器主機:Mac mini 1.5GHz, 1GB RAM x 三部
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
右手
星球公民
星球公民
文章: 78
註冊時間: 2004-05-10 21:21

文章 右手 »

請收檔~
如果看到資料是???請改一下連線校對
資料我只大略看了一點,看不出問題在哪,
搞不好是mysql組態設定的問題也不一定。
不過還是搞好了
圖裡的環境是apache 2.0.55 php5.1.0 mysql4.1.15
另外這個是能用utf-8的PSPad
點我
圖檔

圖檔
●架設主機作業系統:Windows 2000 Pro
●我的上網方式:ADSL HINET2MB/512K浮動IP
●我安裝的程式:Apache HTTP Server 2.0.55 +PHP 4.4/5.0.5 + MySql4.0.26
●我的 phpBB2 版本:phpBB 2.0.17
●我的 phpBB2 連結網址
Darkhero
星球普通子民
星球普通子民
文章: 6
註冊時間: 2002-03-05 15:58
來自: 台北
聯繫:

文章 Darkhero »

小弟最近幫 Loki 轉移了資料庫...

發現原始資料並沒有問題...資料表內容為 utf8 , 利用 mysql --default-character=utf8 匯入mysql 4.1 的資料表後.一切正常.(mysql server 部份已經全部預設為 utf8)

但是在 import 的時候會發生在 search_wordlist 產生了相同 primary key 的錯誤..
檢查後發現.原先舊版的 search_wordlist 的 primary key 長度不足...所以在匯入 mysql 4.1 的時候.
由於utf8等的轉換加上字串長度計算不同的關係,導致該表格資料 import 會發生 原來的資料超過欄位長度,過長的部份被截斷,而剩下的部份則產生重複...(此時的錯誤訊息就是 Duplicate entry )

暫時解決的方法為 修改 dump file . 手動修改 search_wordlist 的 primary key 的欄位長度.

重新使用 mysql 進行 import 就正常了~...

一點點經驗分享給大家~
Loki
星球公民
星球公民
文章: 54
註冊時間: 2004-02-12 02:21

文章 Loki »

Darkhero 寫:小弟最近幫 Loki 轉移了資料庫...

發現原始資料並沒有問題...資料表內容為 utf8 , 利用 mysql --default-character=utf8 匯入mysql 4.1 的資料表後.一切正常.(mysql server 部份已經全部預設為 utf8)

但是在 import 的時候會發生在 search_wordlist 產生了相同 primary key 的錯誤..
檢查後發現.原先舊版的 search_wordlist 的 primary key 長度不足...所以在匯入 mysql 4.1 的時候.
由於utf8等的轉換加上字串長度計算不同的關係,導致該表格資料 import 會發生 原來的資料超過欄位長度,過長的部份被截斷,而剩下的部份則產生重複...(此時的錯誤訊息就是 Duplicate entry )

暫時解決的方法為 修改 dump file . 手動修改 search_wordlist 的 primary key 的欄位長度.

重新使用 mysql 進行 import 就正常了~...

一點點經驗分享給大家~
原來如此\r
怪不得我轉移其他的資料庫都沒問題
唯獨phpBB會出狀況
現在知道原因了
真的是太感謝了^^
●架設主機作業系統:FreeBSD 6.0-Release
●我安裝的程式:Apache 2.0.55 + PHP 4.4.1 + MySQL 4.1.15
●上網方式:學術網路
●我的 phpBB2 版本:phpBB 2.0.18
●我的網域:loki.ind.ntou.edu.tw
●我的 phpBB2 連結網址: http://loki.ind.ntou.edu.tw/~mac/forum/
Loki
星球公民
星球公民
文章: 54
註冊時間: 2004-02-12 02:21

文章 Loki »

昨天我又做了一次\r
因為上次只是先行測試
而這一次是玩真的了
我有修改dump出來的SQL
把phpbb_search_wordlist的primary key長度改大一點
但還是出現和上次一樣的問題
好奇怪喔 = =

可以的話\r
我願意提供SQL檔
●架設主機作業系統:FreeBSD 6.0-Release
●我安裝的程式:Apache 2.0.55 + PHP 4.4.1 + MySQL 4.1.15
●上網方式:學術網路
●我的 phpBB2 版本:phpBB 2.0.18
●我的網域:loki.ind.ntou.edu.tw
●我的 phpBB2 連結網址: http://loki.ind.ntou.edu.tw/~mac/forum/
右手
星球公民
星球公民
文章: 78
註冊時間: 2004-05-10 21:21

文章 右手 »

有一個無痛升級撇步,直接抓實體資料表,
*.MYI'*.MYD'*.frm三個一組,複製到升級的mysql/date/資料庫名裡\r
,這樣就不用管原來資料是不是已經暴表了,不過取資料時候,超過長\r
度的還是會被截掉.
Loki
星球公民
星球公民
文章: 54
註冊時間: 2004-02-12 02:21

文章 Loki »

右手 寫:有一個無痛升級撇步,直接抓實體資料表,
*.MYI'*.MYD'*.frm三個一組,複製到升級的mysql/date/資料庫名裡\r
,這樣就不用管原來資料是不是已經暴表了,不過取資料時候,超過長\r
度的還是會被截掉.
但這樣的話\r
編碼上會不會產生問題呢?
因為我是從MySQL 4.0換成4.1
●架設主機作業系統:FreeBSD 6.0-Release
●我安裝的程式:Apache 2.0.55 + PHP 4.4.1 + MySQL 4.1.15
●上網方式:學術網路
●我的 phpBB2 版本:phpBB 2.0.18
●我的網域:loki.ind.ntou.edu.tw
●我的 phpBB2 連結網址: http://loki.ind.ntou.edu.tw/~mac/forum/
Loki
星球公民
星球公民
文章: 54
註冊時間: 2004-02-12 02:21

文章 Loki »

解決問題了
把phpbb_search_wordlist清空再匯回去就可以了
因為把這個table清空並不會影響phpbb正常的運作
●架設主機作業系統:FreeBSD 6.0-Release
●我安裝的程式:Apache 2.0.55 + PHP 4.4.1 + MySQL 4.1.15
●上網方式:學術網路
●我的 phpBB2 版本:phpBB 2.0.18
●我的網域:loki.ind.ntou.edu.tw
●我的 phpBB2 連結網址: http://loki.ind.ntou.edu.tw/~mac/forum/
apprilia
星球普通子民
星球普通子民
文章: 1
註冊時間: 2004-05-17 12:54

文章 apprilia »

右手 寫:有一個無痛升級撇步,直接抓實體資料表,
*.MYI'*.MYD'*.frm三個一組,複製到升級的mysql/date/資料庫名裡\r
,這樣就不用管原來資料是不是已經暴表了,不過取資料時候,超過長\r
度的還是會被截掉.
因為我是架在家裡的電腦
所以這方式看起來好像簡單粉多
但不知是否還是會有編碼上的問題呢@@?
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

apprilia 寫:因為我是架在家裡的電腦
所以這方式看起來好像簡單粉多
但不知是否還是會有編碼上的問題呢@@?
會,舊版升級到新版會把 database 預設為 latin1,一樣會出問題。而且,這種方式複製如果使用 InnoDB 會出問題不能用。
主題已鎖定

回到「phpBB 2 安裝與使用」