[分享]Big5論壇轉換成UTF8(自有資料庫者)

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

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
主題已鎖定
streitleak
星球公民
星球公民
文章: 261
註冊時間: 2003-07-26 04:44
來自: 龍潭
聯繫:

[分享]Big5論壇轉換成UTF8(自有資料庫者)

文章 streitleak »

其實也只是很意外的插曲,本來想弄phpMyAdmin的HTTP認證功能,中間把說明文件的意思看反了,以為要把MYSQL升級到4.1.2版以後才能用,後面才發現那是對4.1.2以前版本設定用的。
所以就傻傻的把MySQL4.1.13移除,然後重裝成4.1.22版。
而論壇原先是Big5碼的,MySQL也是Big5校對,而4.1.22我讓他的校對用成UTF8,所以就發生所謂的亂碼狀況,不過後來還是找到辦法解決了。

需求環境
1.自己架設的資料庫系統
為何需要自己架設的資料庫系統?因為這牽扯到資料庫引擎的連線校對用設定,一般免費資料庫你沒辦法處理。
2.Convert
這是把Big5碼的Lang_main.php轉換成utf8用的,當然你也可以直接抓utf8版的phpBB。
3.Big碼的phpBB論壇,沒有額外安裝的MOD,且有文章跟版面等。
4.phpMyAdmin
非必要,因為也能用MySQL的clinet下SQL指令處理,不過比較建議用phpMyAdmin,會比較快且方便,稍後只介紹用phpMyAdmin的部分

過程
1.先找出MySQL的MSI檔,不然無法正常移除。
例如我是4.1.ㄳ 你就要把4.1.13的MSI檔找出來,然後用新增/移除程式方式移除他。
2.安裝新版MYSQL,安裝完成後會要你設定,這時請選用Detailed Configuration,這裡才能設定你的語系。在語系選Multi部分,他的圖樣會秀日本語也就是中間選項,剩下的都看你個人想法設定。
安裝完畢後MySQL應該可以正常動作了。

4.論壇相關
4.1 phpMyAdmin部分
4.1.1 進入phpMyAdmin的時候,有個mysql系統變數,點下去看後,在
而欄位collation connection,collation database,collation server三個都要是utf8_general_ci,這會影響到phpMyAdmin一開始畫面右邊mysql連線校對。如果三個欄位都不是utf8_general_ci,請自行參考MySQL文件將之變更。
圖檔
圖檔
4.1.2 進入phpBB的資料庫,上方的工具列會變更,其中有一個是管理,進入管理畫面後,將下面的校對改成utf8_general_ci
圖檔
圖檔
4.1.3回到資料庫頁面,在第一個資料表選結構,進去後一樣選管理,把校對也換成UTF8_geneeal_ci,這時候旁邊有個執行,點選他會出現一段SQL語法,把SQL語法複製下來,進入SQL語法頁面,對其他資料表都進行相同的動作,這樣資料庫的部分就OK了。
圖檔
圖檔
圖檔
圖檔
圖檔

4.2 請用Converter將languages的語系檔都轉換成utf8或直接用utf8版的取代。
5.連上論壇查看結果

希望大家都能順利轉換成utf8。
台灣動漫論壇
http://ACGFan.twbbs.org
星
汝命短眷族望聞
我望 
汝本將末看取
-------------《人類帝國國歌一節
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

Re: [分享]Big5論壇轉換成UTF8(自有資料庫者)

文章 chiouss »

streitleak 寫:其實也只是很意外的插曲,本來想弄phpMyAdmin的HTTP認證功能,中間把說明文件的意思看反了,以為要把MYSQL升級到4.1.2版以後才能用,後面才發現那是對4.1.2以前版本設定用的。
沒這回事吧 =.=
luicst
星球普通子民
星球普通子民
文章: 12
註冊時間: 2007-07-12 10:33

文章 luicst »

質疑做法的正確性

這樣只是改編碼設定, 已經存進去的資料編碼不會跟著修正
michaelchain
星球公民
星球公民
文章: 129
註冊時間: 2006-10-17 03:13

文章 michaelchain »

要改變資料的編碼, 需要將資料先導出轉碼后再重新導入.
我是用的convertz做轉碼, 不過據說mysql自身帶命令在導出時轉碼.
僅僅在資料庫中設定, 應該還是不夠的.

不過此種方式我未試過, 希望有熟悉mysql的大大出來說一下.
pcboy
星球普通子民
星球普通子民
文章: 11
註冊時間: 2002-06-15 02:46

文章 pcboy »

在 MS-Windows 下用 ConvertZ 轉

在 Linux 上可以用 piconv 轉
piconv -f big5 -t utf8 output.sql >utf8.sql

不過都要處理攻蓋許...等問題, 目前是建議用 navicat 轉
最後由 pcboy 於 2007-07-12 15:52 編輯,總共編輯了 1 次。
pcboy
星球普通子民
星球普通子民
文章: 11
註冊時間: 2002-06-15 02:46

文章 pcboy »

mysql自帶命令 ? 指 mysqldump 嗎 ?

小弟在 MySQL 3.x 上測試過

mysqldump --default-character-set=latin1 db > db.sql
mysqldump --default-character-set=big5 db > db.sql

結果內容和檔案大小都相同

mysqldump --default-character-set=utf8 db > db.sql

出現錯誤訊息

mysqldump : Character set 'utf8' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index' file

環境是 Fedora Core 3 , MySQL 安裝 OS 時候順便安裝的
chiouss
竹貓忠實會員
竹貓忠實會員
文章: 1741
註冊時間: 2002-11-29 18:19

文章 chiouss »

pcboy 寫:

代碼: 選擇全部

mysqldump --default-character-set=utf8 db > db.sql
出現錯誤訊息
mysqldump : Character set 'utf8' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index' file
MySQL 要 4.1.2 之後才有 UTF-8,你搞錯版本了,請把前面的文章看仔細一點...
主題已鎖定

回到「phpBB 2 安裝與使用」