virtualenv(python3.4),pip install mysqlclient错误

时间:2016-02-04 00:35:28

标签: python mysql django virtualenv

我为django 1.9项目创建了virtualenv。我试图pip安装mysqlclient或mysql-python但是它们都给了我错误。

pip install mysqlclient

pip install mysql-python

两者都给我相同的错误信息:

  

命令“python setup.py egg_info”失败,错误代码为1   /私有的/ var /文件夹/ R4 / bkv_4t9s4r140pjkgv6lsq8w0000gn / T / PIP-积聚cdxcssp9 /的mysqlclient

任何建议!?

7 个答案:

答案 0 :(得分:50)

尝试在此之前运行:

sudo apt-get install python-dev python3-dev
sudo apt-get install libmysqlclient-dev
pip install pymysql
pip install mysqlclient

答案 1 :(得分:1)

  1. 下载MySQL APT存储库配置工具(您可以在此处查看更多详细信息:http://dev.mysql.com/downloads/repo/apt/

    wget http://dev.mysql.com/get/mysql-apt-config_0.7.3-1_all.deb
    
  2. 安装MySQL APT存储库配置工具

    dpkg -i mysql-apt-config_0.7.3-1_all.deb
    
  3. 系统将要求您选择要安装的产品和版本。在第一步中,选择Server,然后选择mysql-5.6或mysql-5.7。然后单击“应用”。

    1. 更新APT

      apt-get update
      
    2. 安装服务器

      sudo apt-get install mysql-community-server
      
      sudo apt-get install python-dev python3-dev
      sudo apt-get install libmysqlclient-dev
      pip install pymysql
      pip install mysqlclient
      

答案 2 :(得分:1)

如果您使用的是Python 2.x,并且已经安装了:

  • MySQL服务器
  • Python连接器

然后问题是你跑步时:

视窗:

(your environment) SomePath> pip install mysqlclient 

Mac OS:

$ pip install mysqlclient

实际上它要求为Python 3.x安装包而不是2.x.所以这是一个错误。

解决方案将运行:

视窗:

(your environment) SomePath> pip install mysqlclient==1.3.9

Mac OS:

$ pip install mysqlclient==1.3.9

P.S mysqlclient == 1.3.9 版本是Python 2.x的最新版本

答案 3 :(得分:0)

如果您正在使用Anaconda(我强烈建议您),请运行这两个命令

conda install -c anaconda mysql-connector-python

conda install -c bioconda mysqlclient

答案 4 :(得分:0)

这可能是由于您的mysql_config被破坏了。

截至2019年,这是pip install mysqlclient在MacOS上的平稳运行方式:

brew info openssl并遵循底部的命令

  echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc
  export LDFLAGS="-L/usr/local/opt/openssl/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl/include"

其他方法:

  • brew install/upgrade/reinstall mysql:不能为我解决此问题,但是有副作用,可以确保您的安装干净。
  • brew install mysql-connector-c:要完成这项工作,您必须取消mysql的链接,这会破坏您的设置,并且无法为我解决问题。

答案 5 :(得分:0)

对于Ubuntu 18.04

sudo apt-get install python-dev python3-dev
sudo apt-get install libmysqlclient-dev
pip install pymysql
pip install mysqlclient

和设置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'DB_NAME',
        'USER': 'DB_USER',
        'PASSWORD': 'DB_PASSWORD',
        'HOST': 'localhost',   # Or an IP Address that your DB is hosted on
        'PORT': '3306',
    }
}

答案 6 :(得分:0)

这适用于Ubuntu 18.04

max_messages