Tagged articles
8 articles
Page 1 of 1
Efficient Ops
Efficient Ops
Nov 30, 2025 · Databases

Why MySQL’s utf8 Isn’t True UTF‑8 and How utf8mb4 Solves It

MySQL’s original utf8 implementation was a limited, buggy version that only supported three‑byte characters, leading to data loss for emojis and rare symbols, so MySQL introduced utf8mb4 as a full UTF‑8 solution and now recommends it as the default encoding.

Character Setdatabasesencoding
0 likes · 5 min read
Why MySQL’s utf8 Isn’t True UTF‑8 and How utf8mb4 Solves It
ITPUB
ITPUB
Nov 3, 2025 · Databases

Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It

Although MySQL historically labeled its three‑byte character set as “utf8”, it actually implements a truncated version (utf8mb3) that cannot store the full Unicode range, leading to bugs with emojis and rare characters; the newer utf8mb4 restores true UTF‑8 support and is now the default in MySQL 8.0.

Character SetUnicodemysql
0 likes · 7 min read
Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It
dbaplus Community
dbaplus Community
Dec 26, 2024 · Databases

Why MySQL’s utf8 Isn’t True UTF‑8 and How utf8mb4 Fixes It

A collection of Zhihu answers explains that MySQL’s original utf8 charset only supports three‑byte characters, causing data loss for emojis and rare symbols, and shows how the newer utf8mb4 charset provides full Unicode support, becoming the default in MySQL 8.0.

Character Setmysqlutf8
0 likes · 7 min read
Why MySQL’s utf8 Isn’t True UTF‑8 and How utf8mb4 Fixes It
Liangxu Linux
Liangxu Linux
May 6, 2024 · Databases

Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It

Discover why MySQL’s legacy ‘utf8’ charset only supports three‑byte characters, causing storage errors for true UTF‑8 data, and learn how the ‘utf8mb4’ charset resolves these issues, with historical context, technical details, and migration guidance.

Character SetMariaDBencoding
0 likes · 7 min read
Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It
Programmer DD
Programmer DD
Nov 23, 2021 · Databases

Why MySQL INSERT Fails with Incorrect String Value and How to Fix It

A colleague encountered an "Incorrect string value" error when inserting UTF‑8 text into a GBK‑encoded MySQL table, and the article explains how charset mismatches and the use of the CHAR() function cause the failure, then provides reproducible tests and concrete solutions.

CharsetGBKINSERT error
0 likes · 6 min read
Why MySQL INSERT Fails with Incorrect String Value and How to Fix It
Liangxu Linux
Liangxu Linux
Aug 1, 2020 · Databases

Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It

The article explains that MySQL’s legacy "utf8" charset only supports three‑byte sequences, causing errors with true four‑byte Unicode characters, and shows how the later "utf8mb4" charset provides proper UTF‑8 support along with historical context and migration guidance.

Character SetMariaDBencoding
0 likes · 8 min read
Why MySQL’s “utf8” Isn’t Real UTF‑8 and How utf8mb4 Fixes It