FreeBSD 에서 mysql41-server 포트설치 하실때 기본 문자셋 설정법
입니다.
# make WITH_CHARSET=euckr WITH_COLLATION=euckr_korean_ci
install clean
이렇게 한줄만 쳐주시면 my.cnf 만들것도 없이 설정 끝납니다.
WITH_CHARSET=euckr 만 주고 컴파일 할경우 euckr 바이너리 화일
없다는 에러만뜨면서
mysql 이 구동되지 않습니다..
상기 두가지 옵션 모두 주고 설치하실경우 mysql 에 접속해서
status 명령치시면
Server characterset: euckr
Db characterset: euckr
Client characterset: euckr
Conn. characterset: euckr
이라고 나오는거 보실수 있을겁니다.
기존 디폴트값으로 (라틴1) 설치하신분들중 pkg_delete 로 삭제시
의존성때문에
클라이언트가 삭제되지 않으실경우
서버및 클라이언트 포트 디렉토리에서 make deinstall 로 서버버전과
클라이언트를 모두 제거하시면 되고 재설치시 install 이 아닌
reinstall 로 설치하시면 잘 작동합니다.
참고로 재설치후 mysql-server.sh 가 아무런 메세지도 없이 실행되지
않는 상태가 될경우
에러로그 보시면 대부분 답이 나오구요 (제경우엔 /etc/rc.subr
화일의 퍼미션과
실행 스크립트의 my.cnf 위치옵션이 업는 디렉토리를 참조하게
되어서 구동이 안되었었습니다.)
작업전 포트 업그레이드 해두시는게 좋겠죠? (현재 4.1.15로
설치됩니다.)
Mysql 4.1 에서
my.cnf 에 디폴트 캐릭터셋 설정은
[mysqld] 섹션이 아니라
[mysql] 섹션이며
default-character-set=euckr
이라는 옵션을 추가하면 적용이 된다라고 하지만
문자셋 바이너리 화일이 컴파일 되지 않고 기본 설치된경우엔
이옵션을 줘도 바이너리 화일없으니
배째라고 해버립니다.. 이 에러메세지를 보시면
euckr_korean_ci 라는 화일이 없다 라는 말이죠..
위에서 WITH_CHARSET=euckr 만 넣어주면 바이너리 화일이 없기때문에
구동불가며
WITH_COLLATION=euckr_korean_ci 만 넣어주면 euckr 문자셋의
바이너리화일은
설치되지만 기본값은 라틴1이며 my.cnf 화일에 저 옵션을 적어줘야
하게되는겁니다.
도움 되시기를..
|