'힘들구만;;'에 해당되는 글 1건

  1. 2010.12.14 MYSQL 컨버전 하기. (2)
제5 외국어 영역2010.12.14 11:51
오늘은 나의sql에 대해서 이야기 해보려고 한다. 
이야기 한다기 보다 .. experience write!!

문제. mysql 기본 설정이 latin1 이다. but table 은 utf8이다 .. 
안에 내용은 utf8로 보면 다 깨져서 글짜가 보인다. 

해결 해야 할 사항. 
latin1 로 되어 있는놈을 utf8로 ... 바까야 한다. 
그리고 깨져있는 글짜들 다 utf8로 복원 해야 한다. 

사실 이것저것 구글링 통해서 막 다 해봤는데.. 
삽질만 했다.. 
그러더중 우연히 우연히 방법을 찾았다... 아마 계속 반복하다가 실수로 .. 찾은듯.. 

1.  mysqldump -uuser -ppassword --default-character-set=latin1 beta_looah > beta_looah_step1.sql
- 백업받는다... latin1 기본 그대로 .

2. 
cat ./beta_looah_step1.sql | sed 's/CHARACTER\ SET\ latin1/ /g' > ./beta_looah_step2.sql
cat ./beta_looah_step2.sql | sed 's/CHARACTER\ SET\ utf8\ COLLATE\ utf8_unicode_ci/ /g' > ./beta_looah_step3.sql
cat ./beta_looah_step3.sql | sed 's/COLLATE=utf8_unicode_ci/ /g' > ./beta_looah_step4.sql
cat ./beta_looah_step4.sql | sed 's/COLLATE\ utf8_unicode_ci/ /g' > ./beta_looah_step5.sql
(파일 두개로 해도 되는데... step by step 으로다가 ㅋㅋㅋ)
사실 디비 상태가 더러워서 .... 정리 해주는 작업이 필요 햇따.

3. my.cnf 손질이 필요하다.(아래 참조.)
4.utf8을 기본으로 하는  database 만든다.
5. 백업받은 sql열어서 맨윗단에 set names utf8;해준다.
6 . mysql -uuser -ppassword beta_looah < beta_looah_step5.sql


That's it!!!!


참조.!

[client]

character-set=utf8

[mysqld]

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

[mysqldump]

default-character-set=utf8

[mysql]

default-character-set=utf8



Posted by is윤군