본문 바로가기

스크립트/Php 코드 팁

MYSQL] latin1_swedish_ci 를 euckr로 변환하기

http://lael.be/181 

친하진 않지만, 친분이있는 동생의 블로그에 좋은 내용이 있네요..

1. 
mysqldump --default-character-set=latin1 -u root -p latin_db > original.sql 
2. 이 file을 윈도우즈에서 읽으면 정상적으로 보인다.(메모장, ultraedit) 
3. UltraEdit기능 중 [파일]-[변환]-[ASCII를 UNICODE로] 새이름으로 저장한다.(기존 File이 일단 상하지 않도록 조심한다.) : UltraEdit-32 Professional Text/HEX Editor Version 10.10c : original_unicode 
4. Linux에 올린다. 
5. 지원되는 character set에 대한 우려를 해서 우선 iconv --version을 확인했다. : version은 iconv (GNU libc) 2.3.4 로 확인했다. 
6. iconv -f UNICODE -t EUC-KR original_unicode.sql > original_euckr.sql 
7. mysql -u root -p euckr_db < original_euckr.sql 

* DB Create할 때 collation을 euckr로 
* Table Create할 때 : 테이블 정의 뒤에 : ENGINE=MyISAM DEFAULT CHARSET=euckr DEFAULT COLLATE=euckr_korean_ci; 꼭 붙여줘서 모든 character-set/collation을 euckr로 통일해준다.