在 Python 中安装 mysqlclient 在 windows 中安装 3.6

Installing mysqlclient in Python 3.6 in windows

我想在我的 windows 系统上安装 MySqlclient。我目前正在使用 Python 3.6。在 Whosebug 上浏览了各种 post 之后,我找不到正确的方法。 这是我到目前为止所做的:

1) 使用pip 安装pip install mysqlclient。错误:

Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools" http://landinghub.visualstudio.com/visual-cpp-build-tools

我的笔记本电脑上已经安装了 Microsoft Visual C++。有人说你需要 2015 版。

2) 使用 wheel 文件安装 pip install mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl。错误:

Requirement mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl looks like a filename, but the file does not exist. mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl is not a supported wheel on this platform.

2.1) 将 whl 文件更改为不同的版本 pip install mysqlclient-1.3.13-cp36-cp36m-win32.whl。错误:

Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\Users\Foxtrot\Desktop\finaltest\mysqlclient-1.3.13-cp36-cp36m-win32.whl'

完成的其他事情:更新了设置工具,更新了方向盘。

我在 PyPi. So you need to compile it from source. Unfortunately it's not easy. I'm not Windows guy, so I only can recommend guide like this

上找不到 mysqlclient-1.3.13 的 whl 文件

有同样的问题,在网上搜索等等。这里是这个答案:

mysql-python install error: Cannot open include file 'config-win.h'

它有所有的说明。简而言之,请访问此站点:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient:

在那个网站你会发现
mysqlclient‑1.3.13‑cp36‑cp36m‑win32.whl
mysqlclient‑1.3.13‑cp36‑cp36m‑win_amd64.whl

为您的平台下载正确的文件。

然后将下载的 wheels 文件与 pip 一起使用,大功告成:

pip install c:\mysqlclient‑1.3.13‑cp36‑cp36m‑win_amd64.whl

https://www.lfd.uci.edu/~gohlke/pythonlibs 有很多编译库来解决你自己从源代码构建它们的问题。他们甚至为 python 3.7 编译它们 :)

备选方案

您还可以下载 Visual C++ 构建工具,然后您应该能够使用 pip 安装每个(至少据我所知)版本的 mysqlclient。

要执行此操作,请访问此站点:https://www.scivision.co/python-windows-visual-c++-14-required/ 在那里您可以找到所需的构建工具版本,还可以找到 link 下载安装程序。请注意,虽然构建工具需要超过 4GB 的可用磁盘 space。

该错误意味着该包尚未针对您的 OS 和 Python 版本进行编译。所以 pip 会尝试从源代码为您构建它。

有两种可能的解决方案。

  1. 第一个选项是安装最新版本的 Microsoft Visual C++ Build Tools。只需继续并从 Microsoft 网站下载即可。然后pip应该可以编译包了。

  2. 另一种选择是使用非官方二进制文件。如前所述 here, a resource proved to be useful is https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python 。只需下载预编译包并使用

    安装即可

    pip install c:\path-to-a-pre-compiled-package

今天遇到了同样的问题。 试图在 Windows 服务器 R2 上安装 mysqlclient。

[...]

Tl;博士

  1. "MySQL Connector C 6.1" 安装在错误的目录中: "C:\Program Files\MySQL" 而不是 "C:\Program Files (x86)\MySQL" 我应该安装的目录.
    --> 已将 "MySQL Connector C 6.1" 复制到 "C:\Program Files (x86)\MySQL" 目录。

  2. "C:\Users\MoBoo\AppData\Local\Temp" 是只读的: 因此 pip 无法将文件编译到临时目录中。
    --> 允许写入访问 "C:\Users\MoBoo\AppData\Local\Temp" 目录。

以下是对我有用的方法。我卸载了 mysql 和 re-installed 它。

pip uninstall mysqlclient

然后简单地re-install,所以它选择了当前版本“1.4.2.post1”

pip install mysqlclient

有趣的是,它直接起作用。

我在 Windows 10 操作系统上使用 python3.7。 我遇到了同样的问题,经过长时间的研究,我安装成功了。

安装"Microsoft Visual C++ Build Tools" 和 我的 OS 有 64 位操作系统,但仍然需要安装 32 位版本 "mysqlclient‑1.4.2‑cp37‑cp37m‑win32.whl"

从“https://www.lfd.uci.edu/~gohlke/pythonlibs/”和运行命令下载二元轮

pip 安装 [path_to_downloaded_file] 例如:C:\Users\Ds\mysqlclient-1.4.2-cp37-cp37m-win32.whl

如果您使用的是虚拟环境,请使用 pipenv 而不是 pip。

告诉 pip 不要使用源代码,而是使用二进制包:

pip install --only-binary :all: mysqlclient

https://pip.pypa.io/en/stable/reference/pip_install/#install-only-binary

对于这个错误,大多数用户建议安装 vs build,但有一个替代方案非常适合我的情况,对你来说也是肯定的。 从这里下载最新的 MySQL 客户端 mysqlclients

在这里您可以看到很多版本,但更喜欢下载具有 32 位和 64 位文件的最新版本。 下载主题并将文件放在项目根文件夹中,然后 运行 使用相同的命令,但使用下载的 mysqlclient 的完整文件名。

like: pip install mysqlclient‑1.4.6‑cp38‑cp38‑win32.whl

在我的例子中,文件是这样的 另外,如果已经有 XAMPP 服务器,那么您可以将其 PHPMyAdmin 与 python 一起使用。 为此,您只需要更改根 setting.py 文件即可。 像这样

 DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydjango',
        'USER': 'root',
        'PASSWORD':'',
        'HOST':'localhost',
        'PORT':'3306',
    }
}

该端口与您在 MySQL 开始按钮之前的 xampp 面板上看到的相同。 更改此设置后,您只需再次点击此命令即可启动服务器

python manage.py runserver

如果您没有看到任何错误,那么恭喜您成功连接到 MySQL 数据库。

享受...

解决此问题的最简单方法是下载支持您系统上安装的 python 版本的 MySQL 客户端的正确版本。

MYSQL客户端下载link:https://pypi.org/project/mysqlclient/#files

检查您的 PC 中安装的 python 版本: