1. mysql的字符集和校對規則有4個級別的預設設定:
伺服器級,資料庫級,表級和字段級
2. 伺服器級字符集和校對規則的設定:
a. my.cnf
[mysqld]
character-set-server=gbk
b.啟動選項中指定
mysqld --character-set-server=gbk
c. 在編譯安裝時指定
shell > cmake . -ddefault_charset=gbk
注意:預設使用latin1作為伺服器字符集,以上加預設都是使用預設校對規則,沒有使用校對規則。
d.檢視當前伺服器的字符集和校對規則
show variables like 'character_set_server';
show variables like 'collation_server';
3. 資料庫級字符集和校對規則的設定
a.如果沒有指定字符集和校對規則,則使用伺服器字符集和校對規則作為資料庫的字符集和校對規則
b. 一般在資料庫建立時指定該資料庫的字符集和校對規則,不建議在資料庫已有資料的情況下,修改資料庫的字符集和校對規則,舊資料依然按照老的字符集進行儲存。(推薦在建立資料庫時明確指定字符集和校對規則)
c.顯示當前資料庫的字符集和校對規則
show variables like 'character_set_database'
show variables like 'collation_database'
4.表級字符集和校對規則
a.表的字符集和校對規則也是在建立時指定,同樣如果在表中已有資料的情況下,修改字符集和校對規則,原有資料仍然按照老的字符集和校對規則進行儲存,不會進行變更。
b.如果沒有指定預設的字符集和校對規則,表會預設使用資料庫的
c.檢視表的字符集和校對規則
show create table z1 \g;
5. 列字符集和校對規則
a.沒有指定,預設使用表的
b.列的設定一般只是一種靈活手段,針對相同的表的不同字段需要使用不同的字符集的情況。(較少出現)
6. 連線字符集和校對規則
a. 這是指客戶端和伺服器之間進行互動時所使用的字符集和校對規則。
b .互動操作會涉及 三個引數:
character_set_client (客戶端)
chatacter_set_connection(連線)
character_set_results(返回結果)
一般情況下這三個引數的值會保持一致,確保使用者寫入的資料可以正確讀取。
c.對於這三個引數不會進行逐個單一設定,而是使用乙個命令進行統一設定:
set names ***;
d. 或者在my.cnf中進行設定
[mysql]
default-character-set=gbk
mysql 集群字符集 Mysql 字符集
字符集與字元比較 字符集字符集是某種字元的集合,比如最常見的ascii碼,由127個字元組成,只需要乙個位元組就能表示 我們常說的字符集還是gbk iso utf8 mysql 我們使用得最多的字符集就是gbk 和 utf8了 他們都是變長字符集,如果字元在ascii範圍內就使用乙個位元組表示,其他...
mysql字符集 MySQL字符集選擇
一 怎樣選擇合適的字符集 對mysql資料庫來說,字符集很重要,因為資料庫儲存的資料大部分都是各種文字,字符集對資料庫的儲存,處理效能都會有所影響。主要考慮一下幾方面的因素 1.滿足應用支援語言的需求,應用處理各種各樣的文字,發布到使用不同語言的國家或地區,可以選擇unicode字符集,mysql的...
mysql api 字符集 MySQL字符集
mysql字符集包括字符集 character 和 collation 兩個概念。字符集是用來定義mysql儲存字串的規則,校對規則則是定義了比較字串的方式。字串和校對規則是一對多的 關係。使用命令 show collation like gbk 可檢視相關的校對規則 使用 show charact...