安装mysqlclient时出错

时间:2018-05-13 20:34:39

标签: python mysql django

我正在尝试使用django安装mysqlclient连接到我的数据库,但是收到以下错误:

(venv) dhcp-ccc-12919:project user$ pip3 install mysqlclient
Collecting mysqlclient
  Using cached https://files.pythonhosted.org/packages/6f/86/bad31f1c1bb0cc99e88ca2adb7cb5c71f7a6540c1bb001480513de76a931/mysqlclient-1.3.12.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/l4/0f1p1xlj3hlbxr6rzgqzrxmh0000gn/T/pip-install-lo7y8khq/mysqlclient/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "/private/var/folders/l4/0f1p1xlj3hlbxr6rzgqzrxmh0000gn/T/pip-install-lo7y8khq/mysqlclient/setup_posix.py", line 54, in get_config
        libraries = [dequote(i[2:]) for i in libs if i.startswith('-l')]
      File "/private/var/folders/l4/0f1p1xlj3hlbxr6rzgqzrxmh0000gn/T/pip-install-lo7y8khq/mysqlclient/setup_posix.py", line 54, in <listcomp>
        libraries = [dequote(i[2:]) for i in libs if i.startswith('-l')]
      File "/private/var/folders/l4/0f1p1xlj3hlbxr6rzgqzrxmh0000gn/T/pip-install-lo7y8khq/mysqlclient/setup_posix.py", line 12, in dequote
        if s[0] in "\"'" and s[0] == s[-1]:
    IndexError: string index out of range

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/l4/0f1p1xlj3hlbxr6rzgqzrxmh0000gn/T/pip-install-lo7y8khq/mysqlclient/

我在settings.py中有以下内容

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'todo',
        'USER': 'root',
        'PASSWORD': 'password'
    }
}

4 个答案:

答案 0 :(得分:2)

如果您在Windows上,

您可以使用here中的滚轮安装mysqlclient

根据您的平台下载适当的文件;例如:如果您使用的是python 3.6和32位python,则下载

mysqlclient‑1.3.13‑cp36‑cp36m‑win32.whl

下载后,将其复制到C:/ 然后使用以下代码安装文件:

pip3 install C:\mysqlclient‑1.3.13‑cp36‑cp36m‑win32.whl\

如果您使用的是虚拟环境,请在安装之前激活虚拟环境。

答案 1 :(得分:0)

brew install mysql

为我修好了

答案 2 :(得分:0)

请访问以下链接,其中包含针对不同操作系统的工作点安装:

https://github.com/prasad01dalavi/python_packages_installations

for linux中的python2

sudo apt-get install -y python-dev libmysqlclient-dev && sudo pip install mysqlclient

答案 3 :(得分:0)

如果您看到mysqlclient的文档,我认为它对您有很大帮助。

文档说:

请注意,这是一个基本步骤。我无法支持针对所有环境进行构建的完整步骤。如果您看到一些错误,则应自行修复,或在某些用户论坛中寻求支持。不要在问题跟踪器上提交问题。

您可能需要像这样安装Python 3和MySQL开发标头和库:

$ sudo apt-get install python3-dev default-libmysqlclient-dev build-essential # Debian / Ubuntu

$ sudo yum install python3-devel mysql-devel # Red Hat / CentOS

然后您可以立即通过pip安装mysqlclient:

$ pip install mysqlclient