파이썬 Django를 사용할때 기본적인 데이터베이스는 sqlite3이다. 하지만 나는 mysql 을 데이터베이스로 쓴다. 이때 Django에서 기본적으로 세팅 되어 있는 데이터베이스를 바꿔야 한다.
Django에서 지원하는 데이터베이스는 splite , oracle , mysql , postgresql 이다. mysql을 사용하기 위해서는 mysqlclient 를 다운받아야 한다. Django는 가상환경에서 사용 되기 때문에 pipenv 를 사용해 mysqlclient를 다운받을수 있다.
$ pipenv install mysqlclient
위와 같이 입력했을때 다음과 같은 에러가 났다.
잘린 화면 아래로 길게 에러를 말해주고 있다. 예전에는 정상적으로 다운이 받아지다가 갑자기 안되서 이유를 찾다보니까 Mac mojave 와 호환이 안된다는 것을 알게 되었다.
해결방법으로는 openssl 을 사용하는 방법이 있다. 아래와 같이 openssl을 사용하면 정상적으로 다운이 받아진다.
brew install opensslLDFLAGS=-L/usr/local/opt/openssl/lib pip install mysqlclient
LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysqlclient 이 줄은 가상환경에 들어가서 사용해야 한다.