1. 程式人生 > >MySQL基礎配置之mysql的預設字元編碼的設定(my.ini設定字元編碼)(解決Mysql不能儲存中文的問題)

MySQL基礎配置之mysql的預設字元編碼的設定(my.ini設定字元編碼)(解決Mysql不能儲存中文的問題)

MySQL基礎配置之mysql的預設字元編碼的設定(my.ini設定字元編碼)

MySQL的預設編碼是Latin1,不支援中文,那麼如何修改MySQL的預設編碼呢,下面以設定UTF-8為例來說明.

需要注意的是,要修改的地方非常多,相應的修改方法也很多。下面是一種最簡單最徹底的方法:

一、Windows系統 
1、中止MySQL服務 
2、在MySQL的安裝目錄下找到my.ini,如果沒有就把my-medium.ini複製為一個my.ini即可 
3、開啟my.ini以後,在[client]和[mysqld]下面均加上default-character-set=utf8,儲存並關閉(mysqld中增加如果出錯,可以試character-set-server=utf8

) 
4、啟動MySQL服務

二、Linux系統 
1、中止MySQL服務(bin/mysqladmin -u root shutdown) 
2、在/etc/下找到my.cnf,如果沒有就把MySQL的安裝目錄下的support-files目錄下的my-medium.cnf複製到/etc/下並改名為my.cnf即可 
3、開啟my.cnf以後,在[client]和[mysqld]下面均加上default-character-set=utf8,儲存並關閉 
4、啟動MySQL服務(bin/mysqld_safe &)

非常簡單,這樣的修改一勞永逸,今後MySQL一切相關的預設編碼均為UTF-8了,建立新表格的時候無需再次設定

需要注意的是,當前資料庫中已經存在的資料仍保留現有的編碼方式,因此需要自行轉碼,方法在網上有很多,不再贅述

注意:如果是高版本的MYSQL中,增加時,

將MySQL預設編碼修改為UTF-8呢?只需在my.ini中的[mysqld]組名的末尾新增:

character-set-server=utf8

即可。那mysqld:unknown variable 'default-character-set=utf8'的錯誤原因是什麼呢?因為引數:default-character-set=utf8 在較新版本的MySQL 中已移除。所以,建議高版本的MySQL使用”character-set-server“,而不要使用“default-character- set”。

檢視字元編碼:設定好後,如何檢視我們設定的字元編碼是否OK呢?可以在命令提示符下輸入: 
SHOW VARIABLES LIKE 'char%'