2007年6月11日 星期一

MySQL的預設編碼?

在一些安裝了 MySQL Server 的系統上,不曉得是什麼原因,預設的連線編碼、校對甚至是資料庫與資料庫欄位的編碼皆是latin1_swedish_ci,雖然使用上可能還是正常,但是配合其它工具軟體來看時,就可能爆炸啦,但是直接改編碼方式又會破壞資料,解決的方法我是使用 phpMyAdmin 備份出來,重設資料庫編碼成 utf-8,再將資料匯入:

1. 下載 phpMyAdmin 套件

2. 修改 phpMyAdmin/libraries/select_lang.lib.php
在裡頭找到這行

'utf-8'        => 'utf8',   改成

'utf-8'        => 'latin1', 存檔

3. 使用phpMyAdmin把資料庫備份出來,這時應該看的到正確的中文字

4. 把資料庫的所有編碼都改成 utf-8,並清空或刪除資料庫。

5. 把 phpMyAdmin/libraries/select_lang.lib.php 改回原本設定,再匯入已備份的資料庫就行了,此時所有編碼應該都是 utf-8。

PS:以上皆假設對所有資料庫有完整權限。

沒有留言: