一般安裝MySQL程序過程中,有一步驟是選擇MySQL的默認編碼格式的,程序默認為Latin1編碼格式,當然也可以選擇第三個選項,手動選擇gbk或utf8編碼格式,以支持中文數據。如下圖:
現在問題出來了,安裝完成后,又想去修改MySQL的默認編碼格式(這樣就省去每次新建數據庫都要指定其編碼格式的麻煩),該怎么辦呢?
1:如何查看MySQL相關的編碼格式默認值
在cmd中,輸入指令"mysql –u root –p”以root身份連接mysql數據庫
然后有兩種方式查看編碼格式:
1)show variables like ‘character%’;
2)show variables like ‘collation%’;
2:既然可以用命令查看,當然也可以用命令修改了
稍微解釋一下:
character_set_client:客戶端編碼方式;
character_set_connection:建立連接時使用的編碼;
character_set_database:數據庫的編碼;
character_set_result:結果集的編碼;
character_set_server:數據庫服務器的編碼;
I:執行命令:set NAMES ‘utf8’;
該命令等同於執行如下三條命令:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
但是,該設置的編碼格式,只對當前連接(窗口)有效,即用另外一個Dos窗口再連接mysql數據庫進行查看,編碼格式是沒有改變的。
II:數據庫、表、字段,均可以在創建時設置其默認編碼格式,或者在其后進行修改[摘自easybean的博客]
1)create database dbname character set utf8;
alter database dbname character set utf8;
2)create table tname(…) default charset=utf8;
alter table type character set utf8;
3)create table tname(flag_deleted enum('Y','N') character set utf8 not null default 'N')
alter table type modify type_name varchar(50) character set utf8;
3:比較好的,也是建議的,卻是最后壓軸的磨磨唧唧登場的方法,如下... ...
修改MySQL的配置文件my.ini。
在Window系統下,MySQL的配置文件是在MySQL安裝目錄下的my.ini文件,但是可能安裝完成后,在目錄下木有my.ini文件,而是如下這些文件:
這時候可以去網上下載一個my.ini文件然后放到目錄下即可,或者在C:\ProgramData\MySQL\MySQL Installer目錄下有:
選擇其中一個版本的my-template-x.x.ini改名成my.ini,放到安裝目錄下也可以。至於細節再在my.ini中具體配置即可。
my.ini配置文件修改細節[摘自easybean的博客]:
I:在[mysqld]標簽下加
default-character-set=utf8
character_set_server=utf8
lower_case_table_names=1 //表名不區分大小寫(此與編碼無關)
II:在[mysql]標簽下加
default-character-set=utf8
III:在[mysql.server]標簽下加
default-character-set=utf8
IV:在[mysql_safe]標簽下加
default-character-set=utf8
V:在[client]標簽下加
default-character-set=utf8
4:在Dos窗口中執行
net stop mysqlservice //關閉mysql服務
net stop mysqlservice //啟動mysql服務
然后在查看一下mysql默認的編碼格式,是否改變成功!改成功了的,恭喜恭喜哈^_^,沒成功的咱再探討一二,下面留下問題,一起學習研究哈!(最后絕招你可以重裝mysql,然后在安裝的那個步驟進行設置)
附注:
1:連接mysql數據庫時的字符串,設計編碼類型的時候如下所示
jdbc:mysql://127.0.0.1:3306/dbname?useUnicode=true&characterEncoding=utf-8
2:mysql支持哪些編碼格式,查看%MySQL%\share\charsets\Index.xml即可
3:mysql的配置文件加載順序[摘自iihero@CSDN]
c:/windows/my.cnf-->c:/windows/my.ini-->c:/my.cnf-->c:/my.ini-->$installdir/my.ini(%MySQL_HOME%/my.ini)-->defaults-extra-file=path