일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- Machine Learning
- 나는리뷰어다2021
- deeplearning
- Udacity
- random forest
- pandas
- ubuntu
- Git
- Python
- 경사하강법
- overfitting
- 주피터테마
- feature scaling
- 주피터 노트북 테마
- MySQL
- lol api
- GitHub
- 주피터노트북 커널 제거
- 한빛미디어
- 주피터노트북 커널 추가
- 주피터노트북
- 회귀분석
- 딥러닝
- deep learning
- 데이터분석
- regression
- 주피터노트북 커널 목록
- Linear Regression
- 모두를 위한 딥러닝
- jupytertheme
- Today
- Total
유승훈
mysql(2) - mysql 기본설정(utf8 문자형) 본문

ubuntu에 mysql을 처음 설치하고 status로 기본설정을 살펴볼수있습니다. 지금 접속해있는 유저나, 현재 설치된 mysql의 버전, 문자열 설정 등을 볼수있습니다. 그 중 Server, DB의 characterset이 latin1로 설정되어 있는 것을 볼수있습니다. latin1은 한글을 지원하지 않기 때문에, 이 상태에서는 한글로된 데이터를 입력할수가 없습니다.

임시로 만든 DB에 한글을 넣으려고 하면, 올바르지 않은 string value로 인식하여 데이터가 입력되지 않습니다. 한글을 제대로 입력하려면 latin1을 utf8로 바꿔주어야 합니다.
원래는 /etc/mysql 경로에 있는 my.cnf 파일에 모든 설정사항들이 같이 들어있었습니다. 하지만 5.7 버전 이후로 다른 경로에 저장되어있습니다.(5.7 이후가 아니라면 언제든 댓글남겨주세요. 수정하도록 하겠습니다.)

이런식으로 어떠한 설정사항도 찾아볼수없습니다. 설정사항이 5.7 버전 이후로는 여러개의 파일에 나누어져 있습니다.
원래는 my.cnf 파일에 [mysql], [client], [mysqldump], [mysqld] 이렇게 네개의 부분에 utf8 옵션을 추가하는 것으로 알고있었는데, 지금은 이것들이 각각의 파일로 구분되어있습니다.
[mysqld] /etc/mysql/mysql.conf.d/mysqld.cnf
character-set-server = utf8
collation-server = utf8_general_ci
[client] /etc/mysql/debian.cnf
default-character-set=utf8

[mysqldump] /etc/mysql/conf.d/mysqldump.cnf
default-character-set=utf8

[mysql] /etc/mysql/conf.d/mysql.cnf
default-character-set=utf8

설정을 다 했다면, mysql을 한번 재시작해주어야 설정이 제대로 적용됩니다.
sudo service mysql restart
이렇게 설정파일을 변경한 뒤에, 아까 만든 tmp_var 테이블에 '한글입력되나요?'를 넣어보면 쿼리가 제대로 실행되면서 데이터가 잘 입력되는것을 볼수있습니다.

'languages > mysql' 카테고리의 다른 글
mysql(1) - 유저관리(생성, 제거, 권한부여) (0) | 2020.05.04 |
---|