MySql 이모티콘(emoji) 저장하기
발단
utf8은 가변 문자열을 3byte 단위로 저장하기 때문에 이모지를 저장하지 못한다. (이모지는 4byte 단위)
- 문자셋을 utf8mb4로 변경해주어야 한다.
MySql 설정 파일에 다음 내용을 추가
$ vim /etc/mysql/my.cnf
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
MySql 재시작
$ service mysql restart
MySql 변경된 문자셋 확인
$ mysql -u root -p
>> SHOW GLOBAL VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
기존 데이터베이스 및 테이블의 문자셋 변경
>> ALTER DATABASE [데이터베이스명] DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
>> use [데이터베이스명]
>> ALTER TABLE [테이블명] DEFAULT CHARACTER SET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
참고
이미 생성한 컬럼의 데이터정렬방식은 자동으로 변경되지 않아 직접 바꿔주었다.
Author And Source
이 문제에 관하여(MySql 이모티콘(emoji) 저장하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sookyeongyeom/이모티콘emoji-저장하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)