Django:如何使用pip3安装mysql / connector python

时间:2014-10-26 14:24:15

标签: mysql-python mysql-connector

我正在研究基于Django 1.7和Python 3.4的项目。但是,我在使用pip3安装MySQL / Connector Python时遇到了问题。

根据this document,MySQL / Connector Python支持Python 3.我曾经使用命令pip install MySQL-python在Python中安装MySQL-python。

This download page仅提供.deb文件以便在Ubuntu上安装(顺便说一句,安装也有conflict problems

我尝试安装:

pip3 install mysql-connector-python --allow-external mysql-connector-python

没有错误消息。但是当我运行Django应用程序时,我收到以下错误消息:

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'

问题: 那么,如何使用pip3将MySQL / Connector Python安装到虚拟环境中?或者是否应该将其安装到系统中而不是虚拟环境中?

2 个答案:

答案 0 :(得分:16)

如果您阅读the documentation,您会发现the native MySQLdb driver不支持Python 3.您有两种选择:

mysqldb fork

有一个支持Python 3的分支。阅读its Github repo以了解如何安装系统。对于Ubuntu,请apt-get install python-mysqldb

MySQL连接器

像使用pip install mysql-connector-python --allow-external mysql-connector-python一样从venv安装。然后阅读their documentation for Django并修改您的settings.py文件,使其像:

DATABASES = {
    'default': {
        'NAME': 'user_data',
        'ENGINE': 'mysql.connector.django',
        'USER': 'mysql_user',
        'PASSWORD': 'priv4te',
        'OPTIONS': {
          'autocommit': True,
        },
    }
}

注意连接器值mysql.connector.django: - )

答案 1 :(得分:4)

pip安装的mysql-connector版本不适用于Django 1.8。 github上有一个固定版本。从那里安装的命令是

pip install --allow-all-external git+git://github.com/multiplay/mysql-connector-python

那个适用于Django 1.8。