MySQL字符集編碼utf8和utf8mb4的區(qū)別

  • 字符集氨菇、字符編碼

字符(Character)是各種文字和符號的總稱片效,包括各國家文字、標(biāo)點(diǎn)符號投储、圖形符號衡招、數(shù)字等篱昔。字符集(Character set)是多個字符的集合,字符集種類較多蚁吝,每個字符集包含的字符個數(shù)不同旱爆,常見字符集名稱:ASCII字符集舀射、GB2312字符集窘茁、BIG5字符集、 GB18030字符集脆烟、Unicode字符集等山林。

字符編碼是把字符集中的字符編碼為特定的二進(jìn)制數(shù),以便在計算機(jī)中存儲。編碼方式一般就是對二維表的橫縱坐標(biāo)進(jìn)行變換的算法驼抹。一般都比較簡單桑孩,直接把橫縱坐標(biāo)拼一起就完事了。后來隨著字符集的不斷擴(kuò)大框冀,為了節(jié)省存儲空間流椒,才出現(xiàn)了各種各樣的算法。

字符集和字符編碼一般都是成對出現(xiàn)的明也,如ASCII宣虾、IOS-8859-1、GB2312温数、GBK绣硝,都是即表示了字符集又表示了對應(yīng)的字符編碼,以后統(tǒng)稱為編碼撑刺。Unicode比較特殊鹉胖,后面細(xì)說。

  • utf8mb4

MySQL在5.5.3之后增加了utf8mb4的編碼够傍,mb4即4-Byte UTF-8 Unicode Encoding甫菠,專門用來兼容四字節(jié)的unicode。utf8mb4為utf8的超集并兼容utf8冕屯,比utf8能表示更多的字符淑蔚。

  • 為什么要用utf8mb4?

為什么還要使用utf8mb4呢? 低版本的MySQL支持的utf8編碼愕撰,最大字符長度為 3 字節(jié)刹衫,如果遇到 4 字節(jié)的字符就會出現(xiàn)錯誤了。三個字節(jié)的 UTF-8 最大能編碼的 Unicode 字符是 0xFFFF搞挣,也就是 Unicode 中的基本多文平面(BMP)带迟。也就是說,任何不在基本多文平面的 Unicode字符囱桨,都無法使用MySQL原有的 utf8 字符集存儲仓犬。這些不在BMP中的字符包括哪些呢?最常見的就是Emoji 表情(Emoji 是一種特殊的 Unicode 編碼舍肠,常見于 ios 和 android 手機(jī)上)搀继,和一些不常用的漢字,以及任何新增的 Unicode 字符等等翠语。

  • utf8mb4編碼的使用

如果要在 MySQL中保存 4 字節(jié)長度的 UTF-8 字符叽躯,就需要使用 utf8mb4 編碼,但是要注意只有 5.5.3 版本以后的MySQL才支持(查看版本命令: select version())肌括。為了獲取更好的兼容性点骑,建議使用 utf8mb4 而非 utf8. 對于CHAR類型數(shù)據(jù),utf8mb4會多消耗一些空間,但根據(jù) MySQL官方建議黑滴,可以使用 VARCHAR 替代 CHAR憨募。

ps:char是一種固定長度的類型,varchar則是一種可變長度的類型(因?yàn)閏har長度固定袁辈,方便程序的存儲與查找菜谣,所以char類型存取速度優(yōu)于varchar,即以空間換效率)

參考:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末晚缩,一起剝皮案震驚了整個濱河市葛菇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌橡羞,老刑警劉巖眯停,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異卿泽,居然都是意外死亡莺债,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進(jìn)店門签夭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來齐邦,“玉大人,你說我怎么就攤上這事第租〈肽矗” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵慎宾,是天一觀的道長丐吓。 經(jīng)常有香客問我,道長趟据,這世上最難降的妖魔是什么券犁? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮汹碱,結(jié)果婚禮上粘衬,老公的妹妹穿的比我還像新娘。我一直安慰自己咳促,他們只是感情好稚新,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著跪腹,像睡著了一般褂删。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上尺迂,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天笤妙,我揣著相機(jī)與錄音冒掌,去河邊找鬼噪裕。 笑死蹲盘,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的膳音。 我是一名探鬼主播召衔,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼祭陷!你這毒婦竟也來了苍凛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤兵志,失蹤者是張志新(化名)和其女友劉穎醇蝴,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體想罕,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡悠栓,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了按价。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惭适。...
    茶點(diǎn)故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖楼镐,靈堂內(nèi)的尸體忽然破棺而出癞志,到底是詐尸還是另有隱情,我是刑警寧澤框产,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布凄杯,位于F島的核電站,受9級特大地震影響秉宿,放射性物質(zhì)發(fā)生泄漏盾舌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一蘸鲸、第九天 我趴在偏房一處隱蔽的房頂上張望妖谴。 院中可真熱鬧,春花似錦酌摇、人聲如沸膝舅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽仍稀。三九已至,卻和暖如春埂息,著一層夾襖步出監(jiān)牢的瞬間技潘,已是汗流浹背遥巴。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留享幽,地道東北人铲掐。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像值桩,于是被迫代替她去往敵國和親摆霉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容