PALMisLIFE 討論區

標題: [筆記] 修改MacOS中MySQL 的charset 設定 [列印本頁]

作者: 瘋狂啞鈴    時間: 2011-6-4 18:22
標題: [筆記] 修改MacOS中MySQL 的charset 設定
本文章最後由 瘋狂啞鈴 於 2011-6-4 18:31 編輯

其實之前一直都是在PD中安裝DB,再由Mac這裡連結過去來進行開發。不過看了阿輝之前的Mac安裝MySQL筆記 文章後,就想說直接在Mac上直接安裝MySQL 試試好了,至少可以省掉開啟PD的麻煩。
按照阿輝文章中的步驟,一切都很順利的進行著,一整個就是無痛安裝…
不過當我把自已手頭上程式run起來時,才發現到世界或許不是這樣的美好!!!
存進DB裡的中文字全變成???是怎樣…是要我解謎嗎 囧rz
雖然很久沒用MySQL 了,不過依稀還記得以前也碰過類似的問題,應該還是DB 編碼格式在做怪吧!?(菸~)
所以就稍微股溝了一下,先試試網路上最多人說的方式一好了
方法一: 在建立DB時加上語法宣告
CREATE DATABASE {database name} DEFAULT CHARACTER SET utf8 COLLATE UTF8_UNICODE_CI;
嗯…這招顯然是不行
再來試試另一種方式
方法二: 修改my.cnf 設定
1) 在/etc 的目錄下,新增 my.cnf  設定檔。若是照上面連結中阿輝的安裝方式,設定的範例檔應該會存放在/usr/local/mysql/support-files/ 中,該目錄中一共有 my-large.cnf、my-medium.cnf及my-small.cnf  三種,可以依自已的需求來選擇你想要的範例檔。
若以my-medium.cnf 為例,直接開啟終端機,在裡面輸入sudo cp /usr/local/mysql/support-file/my-medium.cnf /etc/my.cnf後,再打入你的管理者密碼即可。

2) 修改/etc/my.cnf 設定,在終端機中輸入sudo nano /etc/my.cnf 即可對my.cnf 進行編輯。網路上看到很多文章都是寫要在[client] 及 [mysqld] 中新增下列設定
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
default-collation=utf8_general_ci

問題就是出在這裡,我不管怎麼設定,mysql 服務似乎就是無法啟動,後來去看了一下Log只看到一堆 unknown variable 'default-character-set=utf8' 的錯誤 囧rz
後來查了一下才知道,原來從MySQL 5.5 後,對於 character set 的設定語法已經改變了。
只需要在my.cnf 中針對
[mysqld]底下新增一行 (原來上面那三行設定可以全部不用了)
character_set_server=utf8
就可以了







歡迎光臨 PALMisLIFE 討論區 (http://f.pil.tw/) Powered by Discuz! X2.5