從MySQL4.0升級至5.0。 首先把資料dump出來 。由於先前用4.0時我的資料是存成latin1,不管是Big5或是wordpress的UTF-8存進去後都是變成lantin1,所以dump出來後要用iconf或piconf把他轉成UTF-8,記得dump出來時要加上-default-character-set=latin1 如果原先是Big5的資料,像我的Coppermine Photo Gallery,dump出來後就直接把Big5轉成UTF-8即可 #mysqldump -u帳號 -p -default-character-set=latin1 資料庫 >output.sql #piconv -f big5 -t utf8 output.sql >utf8.sql 如果原先是UTF-8的資料,像是wordpress,dump出來後要先轉成Big5後,再把他轉成UTF-8,因為原先dump出來的是偽裝成UTF-8的lantin1不是真正的UTF-8 #mysqldump -u帳號 -p -default-character-set=latin1 資料庫 >output.sql#piconv -f utf8 -t big5 output.sql > big5.sql#piconv -f big5 -t utf8 big5.sql >utf8.sql 接著MySQL5.0灌好後,MySQL的my.cnf設定檔內要加入以下設定 [client]default-character-set=utf8[mysqld]default-character-set=utf8default-collation=utf8_general_ci 但也有看到資料說[mysqld]那邊加上 default-character-set=utf8跟 default-collation=utf8_general_ci後,一些舊的使用Big5編碼的php程式,又沒有加入連資料庫時指定的編碼方式的相關code的話,那些程式就會爛掉,所以目前我是沒有加上那兩行。 接著建立空的資料庫準備把dump出來的資料import進去,SQL語法應該類似下面這樣,要加上DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci CREATE DATABASE `abc` DEFAULT CHARACTER [...]
