mysql中utf8和utf8mb4區(qū)別

一、簡(jiǎn)介

MySQL在5.5.3之后增加了這個(gè)utf8mb4的編碼或听,mb4就是most bytes

4的意思,專門用來(lái)兼容四字節(jié)的unicode。好在utf8mb4是utf8的超集脚猾,除了將編碼改為utf8mb4外不需要做其他轉(zhuǎn)換。當(dāng)然砚哗,為了節(jié)省空間龙助,一般情況下使用utf8也就夠了。

二蛛芥、內(nèi)容描述

? ?那上面說(shuō)了既然utf8能夠存下大部分中文漢字,那為什么還要使用utf8mb4呢? 原來(lái)mysql支持的 utf8 編碼最大字符長(zhǎng)度為

3 字節(jié)提鸟,如果遇到 4 字節(jié)的寬字符就會(huì)插入異常了。三個(gè)字節(jié)的 UTF-8 最大能編碼的 Unicode 字符是 0xffff仅淑,也就是

Unicode 中的基本多文種平面(BMP)称勋。也就是說(shuō),任何不在基本多文本平面的 Unicode字符涯竟,都無(wú)法使用 Mysql 的 utf8

字符集存儲(chǔ)赡鲜。包括 Emoji 表情(Emoji 是一種特殊的 Unicode 編碼,常見于 ios 和 android

手機(jī)上)庐船,和很多不常用的漢字银酬,以及任何新增的 Unicode 字符等等。

三筐钟、問題根源

? ?最初的 UTF-8 格式使用一至六個(gè)字節(jié)揩瞪,最大能編碼 31 位字符。最新的 UTF-8 規(guī)范只使用一到四個(gè)字節(jié)篓冲,最大能編碼21位李破,正好能夠表示所有的 17個(gè) Unicode 平面宠哄。

? ?utf8 是 Mysql 中的一種字符集,只支持最長(zhǎng)三個(gè)字節(jié)的 UTF-8字符嗤攻,也就是 Unicode 中的基本多文本平面琳拨。

? ?Mysql 中的 utf8 為什么只支持持最長(zhǎng)三個(gè)字節(jié)的 UTF-8字符呢?我想了一下屯曹,可能是因?yàn)?Mysql

剛開始開發(fā)那會(huì)狱庇,Unicode 還沒有輔助平面這一說(shuō)呢。那時(shí)候恶耽,Unicode 委員會(huì)還做著 “65535

個(gè)字符足夠全世界用了”的美夢(mèng)密任。Mysql 中的字符串長(zhǎng)度算的是字符數(shù)而非字節(jié)數(shù),對(duì)于 CHAR 數(shù)據(jù)類型來(lái)說(shuō)偷俭,需要為字符串保留足夠的長(zhǎng)浪讳。當(dāng)使用

utf8 字符集時(shí),需要保留的長(zhǎng)度就是 utf8 最長(zhǎng)字符長(zhǎng)度乘以字符串長(zhǎng)度涌萤,所以這里理所當(dāng)然的限制了 utf8 最大長(zhǎng)度為 3淹遵,比如

CHAR(100) ?Mysql 會(huì)保留 300字節(jié)長(zhǎng)度。至于后續(xù)的版本為什么不對(duì) 4 字節(jié)長(zhǎng)度的 UTF-8

字符提供支持负溪,我想一個(gè)是為了向后兼容性的考慮透揣,還有就是基本多文種平面之外的字符確實(shí)很少用到。

? ?要在 Mysql 中保存 4 字節(jié)長(zhǎng)度的 UTF-8 字符川抡,需要使用 utf8mb4 字符集辐真,但只有 5.5.3

版本以后的才支持(查看版本: select version();)。我覺得崖堤,為了獲取更好的兼容性侍咱,應(yīng)該總是使用 utf8mb4 而非 utf8.

?對(duì)于 CHAR 類型數(shù)據(jù),utf8mb4 會(huì)多消耗一些空間密幔,根據(jù) Mysql 官方建議楔脯,使用 VARCHAR ?替代 CHAR。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末胯甩,一起剝皮案震驚了整個(gè)濱河市昧廷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蜡豹,老刑警劉巖麸粮,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異镜廉,居然都是意外死亡弄诲,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)齐遵,“玉大人寂玲,你說(shuō)我怎么就攤上這事」R。” “怎么了拓哟?”我有些...
    開封第一講書人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)伶授。 經(jīng)常有香客問我断序,道長(zhǎng),這世上最難降的妖魔是什么糜烹? 我笑而不...
    開封第一講書人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任违诗,我火速辦了婚禮,結(jié)果婚禮上疮蹦,老公的妹妹穿的比我還像新娘诸迟。我一直安慰自己,他們只是感情好愕乎,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開白布阵苇。 她就那樣靜靜地躺著,像睡著了一般感论。 火紅的嫁衣襯著肌膚如雪绅项。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,950評(píng)論 1 291
  • 那天笛粘,我揣著相機(jī)與錄音趁怔,去河邊找鬼湿硝。 笑死薪前,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的关斜。 我是一名探鬼主播示括,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼痢畜!你這毒婦竟也來(lái)了垛膝?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤丁稀,失蹤者是張志新(化名)和其女友劉穎吼拥,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體线衫,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡凿可,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枯跑。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡惨驶,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出敛助,到底是詐尸還是另有隱情粗卜,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布纳击,位于F島的核電站续扔,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏焕数。R本人自食惡果不足惜测砂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望百匆。 院中可真熱鬧砌些,春花似錦、人聲如沸加匈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)雕拼。三九已至纵东,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啥寇,已是汗流浹背偎球。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留辑甜,地道東北人衰絮。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像磷醋,于是被迫代替她去往敵國(guó)和親猫牡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

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

  • 1邓线、問題:mysql 遇到某些中文插入異常最近有同學(xué)反饋了這樣一個(gè)問題: 上述語(yǔ)句在腳本中 load 入庫(kù)的時(shí)候會(huì)...
    kanasu閱讀 2,824評(píng)論 1 5
  • 字符是用戶可以讀寫的最小單位骇陈。計(jì)算機(jī)所能支持的字符組成的集合震庭,就叫做字符集。字符集通常以二維表的形式存在你雌。二維表的...
    劉惜有閱讀 8,095評(píng)論 2 14
  • 昨天看行情,發(fā)現(xiàn)門羅幣暴漲16.7%主籍,并且成功晉級(jí)數(shù)字貨幣前十名习贫,在我心目中,門羅幣一直是個(gè)比較冷門的幣種千元,那么這...
    李曉東2075閱讀 3,411評(píng)論 0 1
  • 其實(shí)繪本還是比較適合孩子看的幸海,因?yàn)楹⒆拥睦斫饽芰τ邢匏钌恚瑘D片和花花綠綠的顏色,對(duì)于他們而言更加有吸引力物独,孩子也更加容...
    胖紫紫閱讀 318評(píng)論 0 0
  • 接著兒子從超市逛了一圈回到家天都黑好了袜硫,走到胡同口才發(fā)現(xiàn)早上停電一直持續(xù)到現(xiàn)在還沒送電,我暗自慶幸:終于不用做飯了...
    我超樂意閱讀 185評(píng)論 0 0