UTF8 vs UTF8mb4

토즐라·2022년 4월 7일
1
post-custom-banner

MySQL과 파이썬을 연동하는 프로젝트를 진행중에 레퍼런스를 찾아보다, Database의 CHARSET을 utf8이 아닌 UTF8mb4로 세팅한 코드를 보았다.

그래서 왜 굳이 UTF8mb4을 이용했는지 살펴보았다.

우선, 해당 선택 문제는 MySQL, MariaDB만 발생하는데,
Emoji같은 글자를 표현하기 위해서는 글자당 최대 4bytes가 필요한데 MySQL에서 utf필드는 최대 3bytes를 지원하기 때문에 Emoji 표현이 되지 않는다고 한다.

따라서 Emoji를 사용하기 위해 UTF8 보다는 DB서버의 환경변수, 테이블 스킴을 지정할 때 UTF8mb4필드가 권장된다고 한다.

생각보다 간단한 이유였다!

profile
Work Hard, Play Hard 🔥🔥🔥

0개의 댓글