[MySQL] utf8, utf8mb4

calm0_0·2023년 10월 11일
0

Database

목록 보기
2/6

MySQL을 사용할 때 CHARSET을 utf8로 지정하여 사용하곤 했다. 종종 utf8mb4로 지정한 예제 코드들을 보았는데 이 둘의 차이가 무엇인지 궁금해졌다.

UTF-8은 4byte로 문자를 표현하는 문자 인코딩 방식이다. 하지만 기존 MySQL에서는 문자들을 3byte로 저장하였다. 때문에 MySQL에서는 UTF-8을 3byte 기반의 자료형으로 설계하여 지원하게 된다.

하지만 최근에는 Emoji😂와 같은 4byte 문자열을 기존의 MySQL에서 지원하던 utf8로 저장할 수 없었다.

그래서 MySQL은 4byte 기반 문자열을 지원하기 위해 utf8mb4 이라는 CHARSET을 추가하게 되었다고 한다.



Reference
https://til.songyunseop.com/mysql/charset_utf8_and_utf8mb4.html
https://dungbeetle.co.kr/tomcat%EC%9D%98-utf-8-%EA%B3%BC-mysql%EC%9D%98-utf8-utf8mb3-utf8mb4-%EC%9D%98-%EC%B0%A8%EC%9D%B4%EB%8A%94-%EB%AD%98%EA%B9%8C/

profile
공부한 내용들을 정리하는 블로그

0개의 댓글