mysql字符集介紹 MySQL字符集介紹及配置

2021-10-19 19:23:31 字數 2112 閱讀 1691

[toc]

1.mysql編碼集

檢視mysql支援的字符集

mysql> show character set;

檢視mysql當前的字符集

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)

或者使用status命令或者\s命令

上面的字符集是mysql5.7.x安裝好預設的字符集

命令的官網解釋:

2.修改字符集

臨時修改

-- set [global] variable_name=charset;

mysql> set global character_set_server=utf8;

永久修改

在my.cnf檔案中指定

[client]

default-character-set=utf8

影響引數:

character_set_client

character_set_connection

character_set_results

[mysqld]

character-set-server=utf8

影響引數:

character_set_database

character_set_server

3.mysql資料庫中字符集轉換流程

mysql收到請求時將請求資料從character_set_client轉換為character_set_connection

進行內部操作前將請求資料從character_set_connection轉換為內部操作字符集,其確定方法如下

使用每個資料字段的character set設定值

若上述值不存在,則使用對應資料表的default character set設定值(mysql擴充套件,非sql標準)

若上述值不存在,則使用對應資料庫的default character set設定值

若上述值不存在,則使用character_set_server設定值

將操作結果從內部操作字符集轉換為character_set_connection

將響應資料從character_set_connection轉為character_set_client

執行sql語句時資訊的路徑是這樣的

資訊輸入路徑:client → connection → server;

資訊輸出路徑:server → connection → results.

4.修改現有字符集

修改資料庫的字符集

-- alter database db_name character set charset;

mysql> alter database snail character set utf8;

修改表的字符集

-- alter database table_name character set charset;

mysql> alter table people character set utf8;

修改列的字符集

-- alter table table_name change column_name column_name varchar(10) character set charset;

mysql> alter table people change name name varchar(10) character set utf8;

mysql 集群字符集 Mysql 字符集

字符集與字元比較 字符集字符集是某種字元的集合,比如最常見的ascii碼,由127個字元組成,只需要乙個位元組就能表示 我們常說的字符集還是gbk iso utf8 mysql 我們使用得最多的字符集就是gbk 和 utf8了 他們都是變長字符集,如果字元在ascii範圍內就使用乙個位元組表示,其他...

mysql字符集 MySQL字符集選擇

一 怎樣選擇合適的字符集 對mysql資料庫來說,字符集很重要,因為資料庫儲存的資料大部分都是各種文字,字符集對資料庫的儲存,處理效能都會有所影響。主要考慮一下幾方面的因素 1.滿足應用支援語言的需求,應用處理各種各樣的文字,發布到使用不同語言的國家或地區,可以選擇unicode字符集,mysql的...

mysql字符集修改 MySql字符集修改

問題分析 普通的字串或者表情都是佔位3個位元組,所以utf8足夠用了,但是移動端的表情符號佔位是4個位元組,普通的utf8就不夠用了,為了應對無線網際網路的機遇和挑戰 避免 emoji 表情符號帶來的問題 涉及無線相關的 mysql 資料庫建議都提前採用 utf8mb4 字符集,這必須要作為移動網際...