【问题标题】:Error when installing mysqlclient安装mysqlclient时出错
【发布时间】:2018-10-23 12:42:50
【问题描述】:

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

(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'
    }
}

【问题讨论】:

标签: python mysql django


【解决方案1】:

如果你在窗户上,

您可以使用来自here 的轮子安装mysqlclient

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

mysqlclient-1.3.13-cp36-cp36m-win32.whl

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

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

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

【讨论】:

    【解决方案2】:
    brew install mysql
    

    帮我解决了这个问题

    【讨论】:

      【解决方案3】:

      如果你看到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 
      

      【讨论】:

      • 谢谢 - 我遇到了错误,您的解决方案帮助了我。看来python3-dev是pyhon3必备的
      【解决方案4】:

      请访问以下链接,其中包含适用于不同操作系统的 pip 安装:

      https://github.com/prasad01dalavi/python_packages_installations

      在 linux 中用于 python2

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

      【讨论】:

        猜你喜欢
        • 2023-03-20
        • 1970-01-01
        • 2020-01-13
        • 1970-01-01
        • 1970-01-01
        • 2022-12-07
        • 2020-06-20
        • 2019-05-04
        • 2021-12-08
        相关资源
        最近更新 更多