SharedIT | 묻고 답하기(AMP)

mysql 한글입력 에러 문제입니다..

안녕하십니까 선배님들

질문을 올리게된 마르티엘 이라고 합니다.

현재 mysql과 jsp 연동을 공부중에 있습니다.

그러다 궁금한 점이 생겨서 이렇게 질문을 올리게 됐습니다.

궁금한 점은 mysql db에다가 테이블과 값을 넣기 메모장에 테이블을 하나 만들고, 메모장을 통해서 테이블에 데이터를 넣기 위한 insert sql 문장을 써서 value 값에 한글을 입력후 저장하여

cmd창에서 source를 사용해서 갱신을 시키는 과정에서

한글 입력 과정이 에러로 나와버립니다.

일단 확실히 한글 에러 오류인것은 확실합니다!!

메모장에서 그 에러가 나는 한글을 영어로 바꾸니까 입력이 됐습니다.

근데 이곳 저곳을 찾아보니까 my.ini 파일안에서 charterset 어쩌구의 내용을 '수정'하는 쪽으로 모두 말을 하는데요...

character에 해당하는 게 여기 없어요.....

어떻게 하면 한글 입력을 할 수 있을 까요??

다른 분께도 같은 질문을 드려봤는데...

default-character-set=utf8

character-set-server=utf8

이런 식으로 my.ini 파일에 위 두 문장을 추가해보라고 하셔서 해봤습니다.

그래서

[mysqld]
character-set-client-handshake=FALSE
init_connect="SET collation_connection = utf8_general_ci"
init_connect="SET NAMES utf8"
default-character-set = utf8
character-set-server = utf8
collation-server = utf8_general_ci

[mysql]
default-character-set = utf8

[client]
default-character-set = utf8

[mysqldump]
default-character-set = utf8

이런 식으로 추가를 해서 저장을 했습니다.

그리고 mysql 서버를 껏다가 다시 키는 과정에서

시스템 오류 1067이 발생하는데...

어떻게 해야 한글 입력을 할 수 있을까요??

알려주시면 감사하겠습니다 ㅜㅜ

Tags : 태그가 없습니다.

4개의 답변이 있습니다.

guest
  0 추천 | 8년 이상 전

참 실력좋으신 분들 많네요 부럽 ㅠ

guest
  0 추천 | 8년 이상 전

일단은 UTF8 문제가 맞는거 갖고 확인해야 할것은

1. 현재 DB의 캐릭터 셋이 어떻게 되어있나
2. 현재 DB 캐릭터 셋이 UTF8이 아니면 변경을 필요
3. 변경은 기존 적어주신분들의 글을 참조하시면 될듯.

잘 확인해 보세요~

guest
  0 추천 | 8년 이상 전

자세한 에러 메시지도 없고 해서 문제 해결에는 도움을 드릴 수 없겠습니다만....

일단 설정 파일에 대해서 말씀드리면....

[mysqld] 항목에서

character-set-server 를 설정했으면 default-character-set은 설정할 필요가 없습니다.

collation-server = utf8_general_ci 도 character-set-server = utf8일 때는 디폴트값이라 굳이 설정할 필요가 없고요.

init_connect=”SET collation_connection = utf8_general_ci” 와 init_connect=”SET NAMES utf8″ 항목은 클라이언트가 어떤 문자셋을 쓸 것인가를 강제적으로 지정하는 건데, character-set-client-handshake를 지정할 수 없는 mysql 버전에서 임시로 사용하던 편법입니다. 따라서 동일한 목적이라면 그 두 줄을 지우고 character-set-client-handshake=TRUE 로 지정하면 끝납니다.

서버 쪽에서 클라이언트의 문자셋을 강제로 지정했으니, [mysql], [client], [mysqldump] 등의 default-character-set 항목은 지정할 필요가 없습니다. 지우셔도 됩니다.

적어주신 설정 항목에서 불필요한 부분이나 상충되는 항목을 지우면 다음과 같습니다.

[mysqld]
character-set-client-handshake=TRUE
character-set-server = utf8

guest
  0 추천 | 9년 이하 전

어떠한 OS에 사용 하시는줄 모르겠지만
http://batmask.net/myhome2012/?p=4465

위 블로그를 보니 윈도우에서 해결하는 이슈가 있길래 공유해 드립니다.

제가 해본건 아님.