티스토리 뷰

DB/정리

[MySQL] ENGINE 과 CHARSET 변경

란텔 2015. 10. 29. 20:49

cnetos를 사용중인데 사이트를 배포하고 접속해서 로그인을 해보니 처음엔 글자가 깨지더니 두번째로

한글을 인서트하니 데이터베이스 에러를 내뿜었다.


show create table 테이블이름;

테이블의 정보를 보는 것으로 결과의 마지막에 charset이 라틴어로 되어있어서 한글을 처리하지 못한 것이다.



테이블을 생성할 때 디폴트 캐릭터셋을 설정하기 위해서는 다음 경로의 파일을 수정한다.

# vi /etc/my.cnf


파일을 열었으면 아래와 같이 수정한다.

[client]

default-character-set = utf8


[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

default_storage_engine=INNODB

#디폴트 엔진을 이노디비로...

skip-character-set-client-handshake

default-character-set = utf8

character-set-server = utf8

collation-server = utf8_general_ci

init-connect = SET NAMES utf8


[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid



수정했으면 mysql프로세스를 재시작한다.

# service mysqld restart



아래의 명령어로 mysql의 설정값을 보며 변경됐는지 확인해본다.

mysql> show variables like 'c%';




그리고 db 툴을 사용하고 있다면 현재 커넥션을 종료하고 다시 커넥션을 해줘야 테이블 생성시 변경된 설정대로 적용된다.




'DB > 정리' 카테고리의 다른 글

VIEW(뷰)  (0) 2022.10.24
[MYSQL] 데이터타입  (0) 2022.10.24
[MySQL] 저장 프로시저 (Stored Procedure)  (0) 2016.02.21
[MySQL] ALTER TABLE  (0) 2015.09.11
[MySQL] 우편번호 밀어넣기 (toad for mysql사용)  (0) 2014.05.29
Comments
최근에 올라온 글
최근에 달린 댓글
TAG
more
Total
Today
Yesterday