show variables like 'character%';
如果現實-bash: show: command not found 說明沒有登入mysql資料庫,需要進行登入
結果如下圖所示:
<a href="http://itblood.com/wp-content/uploads/2012/07/%E6%9F%A5%E8%AF%A2mysql%E5%8E%9F%E5%A7%8B%E7%BC%96%E7%A0%81.jpg" target="_blank"></a>
目錄為/etc/my.cnf
如果系統中沒有my.cnf檔案、則需要建立此檔案,具體步驟請看3,如果存在,直接跳過步驟3,直接進入步驟4
指令find / -iname *.cnf -print
結果如圖:
<a href="http://itblood.com/wp-content/uploads/2012/07/%E6%9F%A5%E6%89%BEmy.cnf%E6%96%87%E4%BB%B6.jpg" target="_blank"></a>
将上面搜尋結果集中/usr/share/mysql目錄下任意的一個檔案複制到/etc/目錄下
指令:cp /usr/share/mysql/my-large.cnf /etc/my.cnf
指令:vi /etc/my,cnf
在[client ]下面加入
default-character-set=utf8
在[ mysqld ] 下面加
character_set_server=utf8
init_connect=’SET NAMES utf8′(或者是SET NAMES ‘utf8′)
網上說在 [ mysql ] 下面加入
我測試了下是不可以,因為mysqld不識别它,是以我改成character_set_server=utf8
service mysql restart
下文附上我自己的處理情況供參考
我的問題:隻有一項未改成utf8 (character_set_server=latinl)
操作:
1、指令:vi /etc/my.cnf
2、配置檔案中沒有[client ]節點,是以就在[ mysqld ] 下面加character_set_server=utf8
3、/etc/init.d/mysqld restart (這是我的重新開機方式)
4、show variables like ‘character%’; (再檢視就已經該過來了,測試發現亂碼問題已解決)
本文轉自 藝晨光 51CTO部落格,原文連結:http://blog.51cto.com/ycgit/1783775,如需轉載請自行聯系原作者