mysqlclientインストール時の「mysql_config not found」を解決する方法

  • 作成日 2021.01.07
  • 更新日 2026.06.12
  • python
mysqlclientインストール時の「mysql_config not found」を解決する方法

pipでmysqlclientインストール時に「mysql_config: コマンドが見つかりません」が発生した場合の対処法を解説します。Ubuntu・CentOS・macOS別の必要パッケージ、pkg-configの導入方法、Django環境での対応手順まで紹介します。

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • pip 20.3.3
  • mysql 5.7.32

エラー全文

mysqlclientインストール時に発生。

 pip install mysqlclient

エラー全文

Collecting mysqlclient
  Downloading mysqlclient-2.0.3.tar.gz (88 kB)
     |████████████████████████████████| 88 kB 5.5 MB/s 
    ERROR: Command errored out with exit status 1:
     command: /home/testuser/anaconda3/envs/py36/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/setup.py'"'"'; __file__='"'"'/tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-02d1lvj7
         cwd: /tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/
    Complete output (15 lines):
    /bin/sh: mysql_config: コマンドが見つかりません
    /bin/sh: mariadb_config: コマンドが見つかりません
    /bin/sh: mysql_config: コマンドが見つかりません
    mysql_config --version
    mariadb_config --version
    mysql_config --libs
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/setup.py", line 15, in <module>
        metadata, options = get_config()
      File "/tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/setup_posix.py", line 70, in get_config
        libs = mysql_config("libs")
      File "/tmp/pip-install-rjlw_3ha/mysqlclient_7cad4d23b07942d8b610dcf40f8507ac/setup_posix.py", line 31, in mysql_config
        raise OSError("{} not found".format(_mysql_config_path))
    OSError: mysql_config not found
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

原因

「mysql_config: コマンドが見つかりません」と書いてる通り、必要なパッケージが足らなかったようです。

対処法

以下を、インストールすれば解決しました。

sudo yum install python-devel mysql-community-devel

補足

mysql_config: コマンドが見つかりません は、mysqlclientのビルドに必要なMySQL(またはMariaDB)の開発用パッケージがインストールされていない場合に発生することが多いエラーです。

OSごとに必要なパッケージが異なるため、利用している環境に応じて事前にインストールしておきましょう。

Ubuntu・Debian系の場合

sudo apt update
sudo apt install python3-dev default-libmysqlclient-dev build-essential pkg-config

pip install mysqlclient

CentOS・RHEL系の場合

sudo yum install python3-devel mysql-devel pkgconfig

pip install mysqlclient

macOS(Homebrew)の場合

brew install mysql-client pkg-config

export PKG_CONFIG_PATH="$(brew --prefix)/opt/mysql-client/lib/pkgconfig"

pip install mysqlclient

なお、mysqlclient 2.2以降では、従来のmysql_configだけではなくpkg-configも利用してライブラリを検出する仕組みに変更されています。

そのため、最近の環境ではpkg-configのインストールだけで解決するケースもあります。

参考リンク

関連記事