mysql 4.0.x 버전에서 4.1.x 버전과 character-set이 달라서 데이터를 이전할때 약간 고생한다.
그래서 간단하게 이전 설명을 해볼까 한다.
1. 4.1에서 덤프 받을때 --default-character-set=euckr 옵션을 주고 덤프 받는다.
# /usr/local/mysql/bin/mysqldump --default-character-set=euckr -u xxx -p xxx > xxx.sql
2. 덤프받은 xxx.sql 파일을 vi 편집기로 열고 편집
" DEFAULT CHARSET=euckr" 삭제 :%s/ DEFAULT CHARSET=euckr//g
" collate euckr_bin" 삭제 :%s/ collate euckr_bin//g
euckr -> euc_kr로 변경 :%s/euckr/euc_kr/g
ex)
perl -pi -e 's/DEFAULT CHARSET=euckr//g' ./dbname.sql
perl -pi -e 's/collate euckr_bin//g' ./dbname.sql
perl -pi -e 's/euckr/euc_kr/g' ./dbname.sql
perl -pi -e 's/character set euc_kr//g' ./dbname.sql
perl -pi -e 's/ENGINE/TYPE/g' ./dbname.sql
perl -pi -e "s/CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP/\'0\'/g" ./dbname.sql
perl -pi -e 's/collate utf8_bin//g' ./dbname.sql
perl -pi -e 's/character set utf8//g' ./dbname.sql
3. xxx.sql을 4.0이하 버전에서 복구
# /usr/local/mysql/bin/mysql -u xxx -p xxx < xxx.sql






15794
27
84










댓글을 달아 주세요