MacOS mysqlclient & psycopg2 환경 설정

Published
September 19, 2024
Last updated
Last updated October 8, 2024

개요

MacOS에서 파이썬 DB 관련 라이브러리인 mysqlclient와 psycopg2를 사용할 때 겪을 수 있는 의존 라이브러리에 관한 정리 글 입니다.
brew를 사용합니다.

mysqlclient

오류

Exception: Can not find valid pkg-config name. Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually

설정법

mysqlclient를 사용하기 위해서는 mysql또는 mysql-client를 설치해야한다.

mysql 또는 mysql-client 설치

mysql

brew install mysql pkg-config

mysql-client

💡
용량: 약 126MB
mysql-client@9.0mysql_native_password과 관련된 오류가 발생하니 8.4버전 설치를 권장한다.
brew install mysql-client@8.4 pkg-config echo 'export PATH="/opt/homebrew/opt/mysql-client@8.4/bin:$PATH"' >> ~/.zshrc echo 'export LDFLAGS="-L/opt/homebrew/opt/mysql-client@8.4/lib"' >> ~/.zshrc echo 'export CPPFLAGS="-I/opt/homebrew/opt/mysql-client@8.4/include"' >> ~/.zshrc echo 'export PKG_CONFIG_PATH="/opt/homebrew/opt/mysql-client@8.4/lib/pkgconfig"' >> ~/.zshrc source ~/.zshrc
단순 export로 환경변수 추가시에 이후 값이 사라질 수 있으니 .zshrc에 직접 추가해준다.

환경변수 추가

그래도 문제가 발생한다면 MYSQLCLIENT_CFLAGSMYSQLCLIENT_LDFLAGS를 직접 추가해준다.
# 값 확인 mysql_config --cflags mysql_config --libs # 설정 export MYSQLCLIENT_CFLAGS="$(mysql_config --cflags)" export MYSQLCLIENT_LDFLAGS="$(mysql_config --libs)"

mysqlclient 설치

pip install mysqlclient

Did you install mysqlclient? 오류

pymysql을 추가해준다.
pip install pymysql
import pymysql pymysql.install_as_MySQLdb()
settings.py

Reference

psycopg2

신규 프로젝트에는 psycopg2가 아닌 psycopg3 사용을 권장

오류

running egg_info writing psycopg2.egg-info/PKG-INFO writing dependency_links to psycopg2.egg-info/dependency_links.txt writing top-level names to psycopg2.egg-info/top_level.txt Error: pg_config executable not found. pg_config is required to build psycopg2 from source. Please add the directory containing pg_config to the $PATH or specify the full executable path with the option: python setup.py build_ext --pg-config /path/to/pg_config build ... or with the pg_config option in 'setup.cfg'. If you prefer to avoid building psycopg2 from source, please install the PyPI 'psycopg2-binary' package instead. For further information please check the 'doc/src/install.rst'

설정법

psycopg2를 사용하기 위해서는 postgresql를 설치하거나, 컴파일러나 외부 라이브러리를 필요로 하지 않는 psycopg2-binary 패키지를 이용해야 한다.

postgresql 설치

💡
용량: 약 46MB
brew install postgresql

Reference