sqlalchemy mysql encoding 문제

A. 로컬에서 테스트를 마치고 서버에 배포를 하니 ???? 형태로 저장된다.
B. 로그를 보니 latin-1 UnicodeEncodeError 가 난다.
이런 일은 숱하게 겪어왔으므로 가벼운 마음으로 설정을 시작했으나 역시 삽질로 빠지고 말았다.

1) mysql 에서 utf-8 이 되도록 설정을 변경하고 리스타트

이 상태에서 이틀을 삽질을 했는데, 결론은... 기존에 생성된 database 설정을 바꾸지 않았다.

즉, 
1-a) mysql 설정을 한 후
1-b) 재시작하고
1-c) database 를 생성해서 utf-8 적용 설정을 확인하고
1-d) 기존 database 의 테이블을 drop 했다.

이렇게 적어 놓고 보면 왜 database 를 새로 안만들었지? 하는 의문이 드는데, 문제를 파내려 가다 보니 추가적인 여러 문제들 - unicode 로 받은 데이터를 utf-8 인코딩으로 변환한다거나, __repr__ 에러를 처리한다거나 등등 -을 만나서 양털을 깎다 보니 미처 의심하지 못했던 듯하다.

어쨌건 문제는, database 를 삭제 후 재생성해서 해결했다.

댓글

이 블로그의 인기 게시물

Confluence 에서 Export PDF 로 내보낼 때 Code Block 에서 한글 깨짐

pandas.read_csv() 에서 왠만하면 컬럼타입을 지정하자

스프링 컨텍스트 설정파일과 URI 경로를 제대로 못찾는 삽질