기타/🚪 DB

HeidiSQL설치 및 도커의 MariaDB characterset을 utf8mb4로 변경

둥굴둥굴둥굴레차 2021. 7. 22. 12:05

 

HeidiSQL설치

MySQL 또는 MariaDB사용시 좀 더 사용을 쉽게 하기 위해 추가적인 것을 설치해준다.

MySQL의 workbench도 있는데 HeidiSQL이 더 편하다고 해서 다운받았다.

 

[MySQL MariaDB tool추천] HeidiSQL 장점 및 설치 방법

MySQL 또는 Maria DB를 사용할 때 MySQL workbench보다 HeidiSQL을 추천한다 [장점] 1. UI가 훨씬 보기 좋다 - 다크 테마도 있어서 원하는대로 다양하게 사용 가능 :) 2. DB, 테이블 구조가 보기 쉽다 3. SELECT한..

allonsyit.tistory.com

 

위 링크의 과정 중 2번에서 애를 먹었는데, Docker를 켜주지 않아서 생긴 문제였다.

 

또한 암호도 임의로 내가 지정해주는 것인줄 알았는데 이전에 mariadb생성시 내가 지정해둔 암호를 적어줘야했었다.

 

1. Docker에서 mariadb를 실행시킨다.

 

2. 세션관리자

참고로 나는 호스트명/IP는 로컬로 해뒀고 세션이름은 CAMEO(우리가 만드려는 프젝의 이름)로 해줬다.

세션이름을 지정해주고 호스트명/IP는 로컬로 지정해주었다.

암호란에는 mariadb에서 지정한 password를 적어준다.

 

여기서 만약 password가 1234라면 양쪽에 소괄호를 함께 입력한 (1234)로 넣어줘야한다.

이번 이후에 HeidiSQL을 사용 할 땐 소괄호를 뺀 암호를 적어주면 된다.
(아래 사진은 위의 블로그에서 가져온 사진임.)

 

 

3. 설치 완료

 


 

도커에서 MariaDB characterset 변경

 

바꿔주는 이유?

latin1 은 한글 입력이 안됨.
utf8 은 이모지 입력 안됨.

utf8mb4 로 바꾸자.

 

1. 도커 컨테이너 안에 있는 파일을 변경하기 위해 에디터 설치

 

cmd 창에서

docker exec -it mariadb /bin/bash (또는 docker exec -it mariadb bash)
# 여기서 mariadb는 Docker에 등록된 마리아디비 이름으로 적어준다.
# 보통은 maria-db로 지정해두는데 난 mariadb란 이름으로 생성했기 때문에 위 명령어로 적어주었다.
apt-get update
apt-get install nano
nano /etc/mysql/my.cnf

 

2. /etc/mysql/my.cnf 파일에서 내용 추가 및 수정

 

화살표 방향 (↓)으로 쭉 내려 아래의 명령어 모두 복사하여 입력하기.

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

 

저장해주기

Ctrl + s

 

나가자

exit

 

 

3. docker에서 mariadb 재실행 후 cmd창으로 돌아와 아래 명령어 실행

 

 docker exec -it mariadb bash mysql -u root -p

 

명령어 실행 후 나오는 cmd창에서,

show variables like 'c%'; 또는 > status 로 바뀐 것 확인해주자.

 

 

 

HeidiSQL을 통해 테이블을 만들어본 모습

커서를 가운데 두고 실행시켜야 된다. 그리고 오토커밋이 아니기 대문에 commit이 필수