安装python的mysqlclient==1.4.6报错
环境:
ubuntu18.04
python 3.6.8
Django 2.0
想要使用Django来操作MySQL,需要安装一个驱动程序。在Python3中,选择用mysqlclient做驱动。
安装mysqlclient出现报错:
ERROR: Command errored out with exit status 1: command: /home/renlei/.virtualenvs/mxonline/bin/python -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"‘"‘/tmp/pip-install-gfcy3s5k/mysqlclient/setup.py‘"‘"‘; __file__=‘"‘"‘/tmp/pip-install-gfcy3s5k/mysqlclient/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-install-gfcy3s5k/mysqlclient/pip-egg-info cwd: /tmp/pip-install-gfcy3s5k/mysqlclient/ Complete output (12 lines): /bin/sh: 1: mysql_config: not found /bin/sh: 1: mariadb_config: not found /bin/sh: 1: mysql_config: not found Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-install-gfcy3s5k/mysqlclient/setup.py", line 16, in <module> metadata, options = get_config() File "/tmp/pip-install-gfcy3s5k/mysqlclient/setup_posix.py", line 61, in get_config libs = mysql_config("libs") File "/tmp/pip-install-gfcy3s5k/mysqlclient/setup_posix.py", line 29, in mysql_config raise EnvironmentError("%s not found" % (_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.
解决方案:
1.先安装 客户端程序:
sudo apt install -y mysql-client
2.基于python安装mysqlclient需要依次安装以下库:
sudo apt-get install libmysqlclient-dev sudo apt install libssl-dev sudo apt install libcrypto++-dev
3.使用pip安装mysqlclient
sudo pip3 install mysqlclient 或者在虚拟环境中用如下命令安装指定版本 (cootuu) root@VM-0-6-ubuntu:~# pip install mysqlclient==1.4.6