(네이버블로그에서 옮겨옴)
[SQL] MySQL 4.1.12에서의 Illegal mix of collations Error
2006/02/07 13:31 http://blog.naver.com/jujac/20021380449
MySQL 4.1.12 상에서 EUC-KR과 UTF-8을 동시에 써야하는 문제가 발생했다.
기존 버전은 EUC-KR기반이었고.. 신 버전은 다국어지원 문제로 UTF-8을 사용하였기에
업그레이드를 위해 기존 버전과 신버전이 동시에 공존하여야 하는 문제가 발생한 것..
DB나 Table이야 각각의 charset에 맞게 설정하면 그만이지만..
Connection은 일단 UTF-8이나 EUC-KR 둘 중에 하나를 선택하여야 한다.
1. 일단, 기존버전을 유지한 상태에서 DB를 copy떠서 charset만 변경시켰다.
원본DB: db_1 → 사본DB: db_2
2. 그리고.. 신버전의 UTF-8의 사용을 위해 DB연결을 시도하였더니 다음과 같은 에러 발견.
Illegal mix of collations (euckr_korean_ci, IMPLICIT) and
(latin1_swedish_ci, COERCIBLE) ...
3. 따라서 Connection을 일치 시켜야만 했다.
그런이유로.. 다음과 같은 파일을 작성하여 include하였다.
<?
$query = 'set session character_set_connection=utf8;';
mysql_query($query) or die("[#".__LINE__."]".mysql_error());
$query = 'set session character_set_client=utf8;';
mysql_query($query) or die("[#".__LINE__."]".mysql_error());
$query = 'set session character_set_results=utf8;';
mysql_query($query) or die("[#".__LINE__."]".mysql_error());
$query = 'set collation_connection=utf8_unicode_ci;';
mysql_query($query) or die("[#".__LINE__."]".mysql_error());
?>
4. 이후 작성되는 모든 mysql관련 명령어는 UTF-8 의 적용을 받는다.
덧글
멋진녀석 2008/09/10 14:24
감사합니다 담아갈께요
미개 2008/09/25 13:17
담아갈께요.
포데스 2010/03/08 17:35
감사. 담아가요.
개구장이 2011/01/19 18:38
감사합니다~
arkim04233 2011/08/03 15:52
감사합ㄴㅣ다
피드 구독하기:
댓글 (Atom)
-
mecab-ko-dic 품사 태그 설명 대분류 세종 품사 태그 mecab-ko-dic 품사 태그 태그 설명 태그 설명 체언 NNG 일반 명사 NNG 일반 명사 NNP 고유 명사 NNP 고유 명사 NNB 의존 명사 NNB 의존 명사 ...
-
mecab-ko-dic 사전관리 Mecab-ko-dic 사전은 아주 간편한 몇가지 규칙으로 관리된다. 비전문가라 하여도 다른 형태소분석기에 비해, 간단하게 배우고 관리할 수 있다는 장점이 있다. (사전 설치/추가 방법은 본 포스트 하단참고)...
-
CentOS 7.x 에서의 Port 관리법 개요 포트를 오픈하려고 iptables 명령을 사용했다. 그런데 아무런 반응이 없었다. iptables -I INPUT -p tcp --dport 8889 -j ACCEPT ...
댓글 없음:
댓글 쓰기