mysql> set names utf8;#修改編碼為utf8這些根本不管用,結果還是亂碼。還有一些就是先看看數據庫目前都是處於哪些編碼狀態:
mysql> show variables like '%character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec) mysql>然後使用類似如下的命令,將不是utf8的編碼的,依次修改成utf8
mysql> set character_set_database=utf8;貌似這樣的方法重啟之後,又會還原。後來又看到一個方法,就是修改配置文件來完成的,這種我試了下,重啟之後不會還原。
buzhidao@nongfushanquan-K55VD:~$ sudo /etc/init.d/mysql stop然後改配置文件
buzhidao@nongfushanquan-K55VD:~$ sudo gedit /etc/mysql/my.cnf然後添加下面的內容(末尾不要有多余的空格什麼的,我不小心在末尾多敲一個空格,結果沒生效):
character_set_server=utf8 init_connect='SET NAMES utf8'
最後打開mysql服務(網上是用 service mysql start,試了,用不了)
buzhidao@nongfushanquan-K55VD:~$ sudo /etc/init.d/mysql start
於是乎我就開始建表了,結果發現最後中文還是亂碼,我就查看了一下建表的語法,發現默認編碼還不是utf8,
然後我又新建一個表,這次我指定了表的編碼,最後中文部分可以正常顯示。<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20150514/2015051410110621.png" height="457" width="349" align="middle" alt="">