Dev/DBMS
이모지(Emoji) 지원을 위한 MariaDB 설정
newtype
2023. 7. 28. 16:37
결론 부터 이야기 하면, 서버 설정을 이모지 지원을 위한 4 byte utf8로 설정하면 된다.
( utf8mb4 / utf8mb4_unicode_ci )
- 설치
- docker를 사용해서 간단히 설치 한다.
$ docker pull mariadb:10.6.14
$ docker run --name mariadb-10.6.14 -d -p 3333:3306 --restart=always -e MYSQL_ROOT_PASSWORD='root123' -e TZ=Asia/Seoul mariadb:10.6.14 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --lower_case_table_names=1
$ docker exec -ti mariadb-10.6.14 mysql -u root -p'root123'
create database test;
create user 'tester'@'%' identified by 'tester123';
grant all privileges on test.* to 'tester'@'%';
flush privileges;
use test;
create table test (
`str` varchar(64) not null,
`rmk` varchar(128) not null,
primary key (`str`)
) ENGINE=InnoDB
- lower_case_table_names은 테이블 대소문자 구분을 안하기 위한 설정
- 테스트
$ mysql --default-character-set=utf8mb4 -h127.0.0.1 -P3333 -utester -p'tester123' test
MariaDB [test]> insert into test values ('𝟓𝟔𝟖 568', '숫자 이모지');
Query OK, 1 row affected (0.008 sec)
MariaDB [test]> select * from test;
+-------------------------------------------+----------------+
| STR | RMK |
+-------------------------------------------+----------------+
| 𝟓𝟔𝟖 568 | 숫자 이모지 |
+-------------------------------------------+----------------+
1 row in set (0.001 sec)
반응형