티스토리 뷰

💼 정보 ver1.0

My-SQL5.1] 한국어 설정

James Wetzel 2009. 1. 19. 18:59
728x90
반응형

시나리오
My-SQL5.1 설치 이후 한글 입력 오류 및 한국어 설정
정보
1. 한국어 입력 오류 현상
mysql> insert into table1 (sentence) values('한국어 입력 테스트utf8');
ERROR 1366 (HY000): Incorrect string value: '\xC7\xD1\xB1\xB9\xBE\xEE...' for co
lumn 'sentence' at row 1
[테스트 환경]
mysql> show variables like 'c%';
+--------------------------+----------------------------------------------------
-----+
| Variable_name            | Value
     |
+--------------------------+----------------------------------------------------
-----+
| character_set_client     | utf8
     |
| character_set_connection | utf8
     |
| character_set_database   | utf8
     |
| character_set_filesystem | binary
     |
| character_set_results    | utf8
     |
| character_set_server     | utf8
     |
| character_set_system     | utf8
     |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.1\share\chars
ets\ |
| collation_connection     | utf8_general_ci
     |
| collation_database       | utf8_general_ci
     |
| collation_server         | utf8_general_ci
     |
| completion_type          | 0
     |
| concurrent_insert        | 1
     |
| connect_timeout          | 10
     |
+--------------------------+----------------------------------------------------
-----+
2. 한국어 입력 설정
2.1 설치 경로\my.ini 파일 수정
[client]

port=3306
default-character-set=euckr

[mysql]
default-character-set=euckr

# SERVER SECTION
# ----------------------------------------------------------------------
#
# The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this
# file.
#
[mysqld]

# The TCP/IP Port the MySQL Server will listen on
port=3306


#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"

#Path to the database root
datadir="D:/My-SQL/Data/"

# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=euckr

2.2 mysql 서비스 재시작
관리도구 -> 서비스 -> MySQL 재시작

2.3 언어셋 설정 확인
mysql> show variables like 'c%';
+--------------------------+----------------------------------------------------
-----+
| Variable_name            | Value
     |
+--------------------------+----------------------------------------------------
-----+
| character_set_client     | euckr
     |
| character_set_connection | euckr
     |
| character_set_database   | euckr
     |
| character_set_filesystem | binary
     |
| character_set_results    | euckr
     |
| character_set_server     | euckr
     |
| character_set_system     | utf8
     |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.1\share\chars
ets\ |
| collation_connection     | euckr_korean_ci
     |
| collation_database       | euckr_korean_ci
     |
| collation_server         | euckr_korean_ci
     |
| completion_type          | 0
     |
| concurrent_insert        | 1
     |
| connect_timeout          | 10
     |
+--------------------------+----------------------------------------------------


3. 확인
mysql> insert into table1 (sentence) values('한국어 입력 테스트euckr');
Query OK, 1 row affected (0.03 sec)

mysql> select * from table1;
+-------------------------+
| sentence                |
+-------------------------+
|   euckr |
+-------------------------+
1 row in set (0.00 sec)

윈도우 명령 프롬프트 상태에서는 select 결과 "한국어 입력 테스트" 부분은 출력되지 않고 "euckr" 영어 부분만 출력이 된다.

한글 입력이 정상적으로 되었는지에대한 확인 방법은 웹상에 출력해 보거나 My-SQL에서 제공하는
"My-SQL Query Browser"을 이용하여 확인해 보면 정상적으로 입력된것을 확인 할 수 있다.

비고
Windows 명령 프롬프트에서 My-SQL5.1의 한글이 왜 출력되지 않는지에 대해서는 아직 잘 모르겠다.
정보를 찾는대로 업로드할 예정...


728x90
반응형