国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

為什么不建議在 MySQL 中使用 utf8 ?

0
分享至

今天在知乎上看到這樣一個(gè)問題:"為什么不建議在MySQL 中使用 utf8?"


問題地址:https://www.zhihu.com/question/630892089

網(wǎng)友 1:靈狐技術(shù)

MySQL當(dāng)年在支持utf8的時(shí)候,自作聰明整了些優(yōu)化措施。

結(jié)果,大家使用過一段時(shí)間后,發(fā)現(xiàn)了這些優(yōu)化措施,不能完整地支持utf8。

MySQL后面想修正這個(gè)bug。

但是,這個(gè)優(yōu)化版utf8已經(jīng)在外面大量使用了。

所以,MySQL只好保留了bug版的優(yōu)化utf8,然后整了個(gè)utf8mb4來重新支持utf8標(biāo)準(zhǔn)。

MySQL的這個(gè)教訓(xùn)說明:

對于標(biāo)準(zhǔn)化的東西,別瞎捉摸;

你的理解再怎么自認(rèn)為有道理,沒用!只會(huì)闖禍!

你做的題,只要對不上公開的標(biāo)準(zhǔn)答案,就是零分

又甜又甜:這個(gè)吃過大虧,現(xiàn)在很多訂單里面會(huì)有表情符號,如果直接保存訂單內(nèi)容會(huì)直接從表情符號后截?cái)?,沒有后面的內(nèi)容
風(fēng)之帆:因?yàn)镸ySQL的utf8是閹割版的utf8,utf8mb4才是真正的utf8。
邵NewBee:被坑過一次,項(xiàng)目開發(fā)上線了發(fā)現(xiàn)不支持表情回復(fù)。
精靈福將馬國成:我們公司最開始一個(gè)項(xiàng)目,當(dāng)時(shí)MySQL數(shù)據(jù)庫設(shè)置utf8,項(xiàng)目使用了半年,然后錄入了廣東那邊一個(gè)人身份證名稱帶有生僻字,導(dǎo)致入庫報(bào)錯(cuò),后來我們把utf8改成utf8mb4就好了。

網(wǎng)友2:寫代碼和簡談人文

MySQL的utf8只支持每個(gè)字符最多三個(gè)字節(jié),而我們需要的是最多四個(gè)字節(jié),從而我們在操作字符串時(shí),會(huì)遇到一些很難溯源的bug(比如表情存儲(chǔ))。MySQL在2010發(fā)布了utf8mb4來支持四個(gè)字節(jié),可以說MySQL的utf8mb4是我們真正意義上的UTF-8。MySQL本意是想在utf8上保持空間和速度,但是在使用utf8的char列時(shí),實(shí)際使用的空間比預(yù)期更大,速度也慢,而且無法保存“”這樣的字符,MySQL發(fā)布了utf8mb4來繞過了這個(gè)問題。

網(wǎng)友3:CoderJia

在MySQL 8.0中,推薦使用的編碼是utf8mb4。這種編碼方式完全兼容utf8,每個(gè)字符最多占4個(gè)字節(jié),就可以支持更多的字符,原來的utf8編碼只能存儲(chǔ)最多三個(gè)字節(jié)的字符,這在存儲(chǔ)某些國家的文字或罕見字時(shí)有些困難了。從MySQL 8.0版本開始,其默認(rèn)的連接字符集從latin1改為了utf8mb4,同時(shí)字符序也從latin1_swedish_ci改為了utf8mb4_0900_ai_ci。當(dāng)使用utf8mb4字符集時(shí),通常推薦使用utf8mb4_unicode_ci或utf8mb4_general_ci排序規(guī)則。


SQL亂碼問題


查看編碼


my.ini配置文件

網(wǎng)友4:愛可生云數(shù)據(jù)庫

官方在后續(xù)的 MySQL 版本也會(huì)逐漸刪除 utf8。在深入探討 utf8mb4 的好處之前,我們先澄清一下 utf8mb4 代表什么。在 MySQL 中,“utf8”是指支持 Unicode 字符集的字符編碼,每個(gè)字符最多使用三個(gè)字節(jié)。然而,MySQL 中原始的 utf8 實(shí)現(xiàn)并沒有涵蓋所有 Unicode 字符。另一方面,utf8mb4 是 utf8 的修改版本,它支持完整的 Unicode 字符集,包括表情符號和其他補(bǔ)充字符,每個(gè)字符最多使用四個(gè)字節(jié)。MySQL 中原始的 utf8 實(shí)現(xiàn)僅支持基本多文種平面(BMP)中的字符,大約占所有 Unicode 字符的 90%。另一方面,utf8mb4 支持整個(gè) Unicode 字符集,包括表情符號和其他補(bǔ)充字符。它通過每個(gè)字符最多使用四個(gè)字節(jié)而不是 utf8 使用的三個(gè)字節(jié)來實(shí)現(xiàn)此目的。下表顯示了 utf8 和 utf8mb4 之間的區(qū)別:



注意:歷史上,MySQL 使用字符集 utf8 作為 utf8mb3 的別名。但是,從 MySQL 8.0.28 開始,utf8mb3 僅在 SHOW 語句的輸出和信息架構(gòu)表中引用該字符集時(shí)使用。未來,utf8 有望成為 utf8mb4 的參考。為了避免任何歧義,建議在引用該字符集時(shí)顯式指定 utf8mb4。如您所見,utf8、utf8mb3 和 utf8mb4 之間的主要區(qū)別在于每個(gè)字符的最大字節(jié)數(shù)。utf8 和 utf8mb3 只能存儲(chǔ) BMP 中的字符,而 utf8mb4 還可以存儲(chǔ)補(bǔ)充平面(Supplementary Plane)中的字符。這意味著 utf8mb4 可以支持更廣泛的字符,包括表情符號、數(shù)學(xué)符號和其他特殊字符。這三個(gè)字符集之間的另一個(gè)區(qū)別是它們在 MySQL 中的默認(rèn)狀態(tài)。utf8 是 MySQL 5.7 及更早版本中的默認(rèn)字符集,而 utf8mb3 是 MySQL 8.0 中的默認(rèn)字符集。但是,utf8mb4 是 MySQL 8.0.28 及更高版本中的默認(rèn)字符集。最后,MySQL 8.0 中已棄用 utf8 和 utf8mb3。這意味著它們最終將從 MySQL 中刪除,因此建議使用 utf8mb4 代替。因此,如果您需要存儲(chǔ)所有 Unicode 字符,包括表情符號和其他補(bǔ)充字符,那么您應(yīng)該使用 utf8mb4。但是,如果您只需要存儲(chǔ) BMP 中的字符,那么 utf8 可能就足夠了。

網(wǎng)友5:春秋的囈語

用不等式秒殺MySQL utf8 ≠ utf8

網(wǎng)友6:學(xué)好邏輯再來辯

MySQL經(jīng)典冷笑話:

我的 utf8 不是 utf8,

我的 utf8mb4 才是 utf8!

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
鄧華進(jìn)餐廳吃飯,有上將漠視轉(zhuǎn)身走開,許世友:老鄧,咱們喝一杯

鄧華進(jìn)餐廳吃飯,有上將漠視轉(zhuǎn)身走開,許世友:老鄧,咱們喝一杯

芳芳?xì)v史燴
2026-03-27 17:55:19
李-夏普:阿莫林距離成功其實(shí)只差一步,他清理了一批問題球員

李-夏普:阿莫林距離成功其實(shí)只差一步,他清理了一批問題球員

懂球帝
2026-03-28 10:44:27
瓦良格號送到中國后有多震撼?專家刮掉表面的銹跡:鋼材品質(zhì)極佳

瓦良格號送到中國后有多震撼?專家刮掉表面的銹跡:鋼材品質(zhì)極佳

古書記史
2026-01-06 16:31:56
女子深夜打車回家,發(fā)現(xiàn)司機(jī)繞路她準(zhǔn)備報(bào)警,司機(jī):你仔細(xì)看后面

女子深夜打車回家,發(fā)現(xiàn)司機(jī)繞路她準(zhǔn)備報(bào)警,司機(jī):你仔細(xì)看后面

千秋文化
2026-02-12 20:06:26
周末!霍爾木茲海峽,傳來大消息!以色列,出動(dòng)50余架戰(zhàn)機(jī)!

周末!霍爾木茲海峽,傳來大消息!以色列,出動(dòng)50余架戰(zhàn)機(jī)!

新浪財(cái)經(jīng)
2026-03-28 17:39:36
大陸放話:不管臺(tái)灣當(dāng)局點(diǎn)不點(diǎn)頭,廈金大橋照建不誤,直達(dá)金門

大陸放話:不管臺(tái)灣當(dāng)局點(diǎn)不點(diǎn)頭,廈金大橋照建不誤,直達(dá)金門

史智文道
2026-03-28 11:42:35
“吳京水腫”登熱搜:臉上一按一個(gè)坑驚呆網(wǎng)友

“吳京水腫”登熱搜:臉上一按一個(gè)坑驚呆網(wǎng)友

TVB的四小花
2026-03-27 16:53:30
張本美和領(lǐng)銜奪冠!連贏2場再勝早田,世界冠軍慘遭爆冷后拿分

張本美和領(lǐng)銜奪冠!連贏2場再勝早田,世界冠軍慘遭爆冷后拿分

全言作品
2026-03-28 17:33:52
你的腎是如何一步步被榨干的?

你的腎是如何一步步被榨干的?

蝌蚪五線譜
2026-03-12 17:45:03
85年我給一個(gè)富商看風(fēng)水,發(fā)現(xiàn)他家地下,居然埋著七口棺材

85年我給一個(gè)富商看風(fēng)水,發(fā)現(xiàn)他家地下,居然埋著七口棺材

千秋文化
2026-03-24 21:51:18
2005年,韓國把“漢城”改為首爾,全世界為何只要求中國改稱呼?

2005年,韓國把“漢城”改為首爾,全世界為何只要求中國改稱呼?

咸説歷史
2026-03-19 07:06:34
一旦歐盟把技術(shù)搞到手,中國企業(yè)再把工廠建起來,會(huì)像尼日爾那樣

一旦歐盟把技術(shù)搞到手,中國企業(yè)再把工廠建起來,會(huì)像尼日爾那樣

阿七說史
2026-03-28 15:27:29
原來他們是夫妻,《冬去春來》他又火了,不高不帥卻娶了漂亮老婆

原來他們是夫妻,《冬去春來》他又火了,不高不帥卻娶了漂亮老婆

老吳教育課堂
2026-03-28 17:10:53
自己交社保的人注意!2026年這兩個(gè)證不辦,補(bǔ)貼退休全受影響

自己交社保的人注意!2026年這兩個(gè)證不辦,補(bǔ)貼退休全受影響

復(fù)轉(zhuǎn)這些年
2026-03-28 10:25:00
老師穿短裙蕾絲襪上課,學(xué)生連頭都不敢抬!老師穿衣底線到底在哪

老師穿短裙蕾絲襪上課,學(xué)生連頭都不敢抬!老師穿衣底線到底在哪

小羽叨叨叨
2026-03-26 13:24:34
南寧警方通報(bào):黎某某在服務(wù)區(qū)入車內(nèi)實(shí)施盜竊已被刑拘,正抓捕另外兩名在逃嫌疑人

南寧警方通報(bào):黎某某在服務(wù)區(qū)入車內(nèi)實(shí)施盜竊已被刑拘,正抓捕另外兩名在逃嫌疑人

環(huán)球網(wǎng)資訊
2026-03-27 23:33:12
自討苦吃,巴拿馬傻眼了,搶完港口后,卻發(fā)現(xiàn)全世界沒人敢接盤

自討苦吃,巴拿馬傻眼了,搶完港口后,卻發(fā)現(xiàn)全世界沒人敢接盤

跳跳歷史
2026-03-25 08:04:10
若西方像制裁俄羅斯那樣制裁中國,會(huì)發(fā)生什么?有人進(jìn)行了推演

若西方像制裁俄羅斯那樣制裁中國,會(huì)發(fā)生什么?有人進(jìn)行了推演

遁走的兩輪
2026-03-26 20:41:28
湖人116-99擊敗籃網(wǎng) 球員評價(jià):2人優(yōu)秀,4人及格,4人低迷

湖人116-99擊敗籃網(wǎng) 球員評價(jià):2人優(yōu)秀,4人及格,4人低迷

籃球資訊達(dá)人
2026-03-28 13:06:17
約中年女人出去玩,她想不想跟你越界。三招一試就懂 許多男人不敢

約中年女人出去玩,她想不想跟你越界。三招一試就懂 許多男人不敢

阿凱銷售場
2026-03-28 16:29:56
2026-03-28 19:03:02
ITPUB學(xué)院
ITPUB學(xué)院
分享技術(shù)干貨,了解最新動(dòng)態(tài)
1190文章數(shù) 629關(guān)注度
往期回顧 全部

科技要聞

遭中國學(xué)界"拉黑"后,這家AI頂會(huì)低頭道歉

頭條要聞

特朗普:北約沒支持美打擊伊朗 美國以后也不會(huì)幫北約

頭條要聞

特朗普:北約沒支持美打擊伊朗 美國以后也不會(huì)幫北約

體育要聞

“我是全家最差勁的運(yùn)動(dòng)員”

娛樂要聞

王一博改名上熱搜!個(gè)人時(shí)代正式開啟!

財(cái)經(jīng)要聞

臥底"科技與狠活"培訓(xùn):化工調(diào)味劑泛濫

汽車要聞

置換補(bǔ)貼價(jià)4.28萬起 第五代宏光MINIEV正式上市

態(tài)度原創(chuàng)

藝術(shù)
教育
時(shí)尚
游戲
本地

藝術(shù)要聞

這位富二代寫的草書,據(jù)說康生臨摹500多遍

教育要聞

AI+教師發(fā)展公益行暨第二屆全國“英語讀思言”及成果展評研討會(huì)在福建泉州成功舉辦

龍蝦來了,厭蠢癥炸了

《紅色沙漠》組建貓咪軍團(tuán)!愛貓人士游戲紀(jì)念逝去愛寵

本地新聞

在濰坊待了三天,沒遇到一個(gè)“濰坊人”

無障礙瀏覽 進(jìn)入關(guān)懷版