MySQL에서 emoji 저장

• MySQL에서 이모지 저장 문제는 utf8mb4 문자 집합을 사용하고 있음에도 불구하고, Collation이 utf8mb4_general_ci로 설정되어 있어 발생하는 문제로, 이를 utf8mb4_unicode_ci로 변경하여 해결할 수 있다.
• utf8mb4_general_ci와 utf8mb4_unicode_ci의 차이는 과거에는 성능 차이로 인해 general 버전이 사용되었으나, 현재는 컴퓨터 성능 향상으로 인해 성능 차이가 거의 없어져 unicode 버전을 사용하는 것이 권장되며, 이는 정확도를 높이는 데 도움이 된다.
• 데이터베이스에서 이모지 저장 시 VARCHAR(4) 타입은 최대 16바이트까지만 저장 가능하여, 이보다 큰 이모지 데이터는 잘려서 저장되는 문제가 발생했다.
• 이 문제를 해결하기 위해 VARCHAR(4)를 VARCHAR(8)로 변경하여 이모지 데이터가 제대로 저장될 수 있도록 하였고, 이로 인해 데이터가 정상적으로 저장되는 것을 확인할 수 있었다.

북마크
공유하기
신고하기