修改mysql資料庫編碼格式以支援中文

2021-07-06 05:31:45 字數 1672 閱讀 9619

mysql資料庫預設的編碼是:latin1,要想支援中文就需要修改為gbk/utf8的編碼格式。

在命令列中輸入:show variables like 『character%』;

通過查詢結果顯示可以看出 資料庫編碼為拉丁語,需要修改為gbk或utf8.

character_set_client為客戶端編碼方式;

character_set_connection為建立連線使用的編碼;

character_set_database資料庫的編碼;

character_set_results結果集的編碼;

character_set_server資料庫伺服器的編碼;

只要保證以上五個採用的編碼方式一樣,就不會出現亂碼問題。

修改資料庫編碼的步驟:

1、停止mysql服務。

2、修改mysql配置檔案。

windows:安裝路徑下的:my.ini

linux:路徑一般為:/etc/mysql/my.cnf

3、找到客戶端配置[client] 在下面新增

default-character-set=utf8 預設字符集為utf8

4、在找到[mysqld] 新增

default-character-set=utf8 預設字符集為utf8

init_connect=』set names utf8』 (設定連線mysql資料庫時使用utf8編碼,以讓mysql資料庫為utf8執行)

5、修改好後,重新啟動mysql檢視當前資料編碼格式。

在命令列中輸入:show variables like 『character%』;

mysql指定編碼的方式是非常靈活並多樣化的,可以指定表級別的編碼,行級別編碼,甚至可以指定字段級別的編碼。

以下示例給出建立資料庫時指定編碼的兩種方式:

1、create database ms_db character set utf8 collate utf8_general_ci;

2、create database if not exists netctoss default character set utf8;

3、如果你採用的是外部接入的方式,可以在連線中確定請求的編碼格式如:jdbc:mysql://localhost:3306 /mysql?useunicode=true&characterencoding=utf-8(注意:不要出現任何空格,否則出錯)

4、若commandline終端檢視資料顯示亂碼則執行如下命令:

set names gbk(注意,不是utf-8) 來修改視窗級別的編碼格式解決終端亂碼問題。

注意:set names gbk只可以修改character_set_client、character_set_connection、 character_set_results的編碼方式,並且這種修改是視窗級別的,只針對當前視窗有效,開啟新視窗修改無效,資料庫底層的編碼方式不會被改變,插入資料後還是以utf8編碼方式儲存。

修改資料庫的編碼格式

在控制台向資料庫新增漢字時有時候會是亂碼,以下是曾經嘗試過的幾種修改編碼格式的方法,記錄學習。修改資料庫在控制台的編碼格式 1 輸入sql語句 set name jbk 2 關閉 mysqladministrator 的service control,修改mini檔案的編碼格式,重啟服務 3 修改資...

修改資料庫的編碼格式

檢視資料庫的編碼格式 show variables like character 檢視資料庫表的編碼格式 show create table fc service activist message 資料庫不能插入中文 修改mysql的編碼 修改mysql預設字符集,可以用mysql的命令 set c...

MySQL資料庫編碼修改教程

搭建專案需要啟動後發現中文亂碼,由於使用的是mysql解壓版,當時便沒有設定資料庫編碼,建立資料庫的時候設定了編碼為gbk,專案編碼也是gbk,前端網頁編碼也是gbk,但是資料庫中的是亂碼,打斷點從前端跟到後台,發現資料都是正常的中文,所以問題一定是出現在mysql資料庫編碼上,特在此幾下修改方法。...