【问题标题】:Mysql Connector 8.0 and Python 3.8Mysql 连接器 8.0 和 Python 3.8
【发布时间】:2020-08-16 02:34:30
【问题描述】:

我使用的是 Windows 10。我安装了 python 3.8.2 32 位。我正在尝试使用 mysql-installer-web-community-8.0.20.0.msi 作为 Python 的连接器。连接器显示为灰色且不可用。错误消息显示未安装 Python 32 位。我看到旧线程声称您需要 Python 3.4。这里的文档:https://dev.mysql.com/doc/connector-python/en/connector-python-versions.html 声称这将适用于 Python 3.8.2。我需要不同的 MySql 安装程序吗?如果没有,我做错了什么?

谢谢, 斯科特

【问题讨论】:

  • 你的路径中有python 可执行文件吗?也就是说,当您打开终端或 命令行 窗口并键入python --version 时,您是否看到版本字符串或收到类似command not found 的错误?
  • 是的,我可以从命令行运行 python。
  • 你的 CPU 是 64 位还是 32 位?

标签: mysql python-3.x mysql-python


【解决方案1】:

我不确定为什么要使用 MySQL 安装程序来安装 Python 库。事后看来,这没有任何意义。使用 pip 安装驱动程序,如

$ pip install mysql-connector-python
# or
$ python pip install mysql-connector
# or for >= Python 3.9
$ pip install mysqlclient 

不完全清楚有什么区别,但是,三个中的第一个解决了问题。

【讨论】:

    【解决方案2】:

    我在 Windows 10 64 位机器上使用 MySQL 8.0.18 和 Python 3.8 时遇到了类似的问题。

    我使用了以下解决方法 -

    1. 确保使用的所有安装程序都是用于 My SQL 和 Python 的 64 位安装程序,因为我的机器是 Windows 10 64 位机器。

    2. 确保 MySQL 的 Python 连接器支持来自 https://insidemysql.com/category/mysql-development/connectors/python/ 的相应 Python 版本,以防出现问题或缺少信息将 MySql 按次要版本降级。

    3. 从 - dev.mysql.com/downloads 下载独立的连接器 MSI

    4. 手动安装下载的连接器 MSI。

    希望这些信息也能帮助您通过使用相应的 32 位版本来解决您的问题。

    【讨论】:

      【解决方案3】:

      遗憾的是,MYSQL对python的兼容性很低。

      例如,我在尝试安装mysql-python(一个可怕的!)时进入了this issue,在使用mysqlclient 时进入了this other issue

      mysql 的python 连接器有很多,你可以尝试一些,一一查看是否有效。我会推荐pymysql

      但是,我建议你使用带有 python 的 Postgresql 数据库,它真的很像魅力,如果你想要一个本地 DBMS/GUI/workbench 来处理它,你可以使用 PgAdmin。

      【讨论】:

        【解决方案4】:

        如果您的 CPU 架构是 64 位,请确保下载 MySQL Connector 64 位版本。 32 位安装程序也可以工作,但有时会出现小错误。 MySQL Connector Python 也要求 Python 在系统的PATH 中。如果找不到 python,则安装失败。将 python.exe 路径添加到 System PATH 变量。以便 MySQL 连接器可以找到执行文件。

        【讨论】:

          【解决方案5】:

          我不确定为什么要使用 MySQL 安装程序来安装 Python 库。事后看来,这没有任何意义。使用 pip 安装驱动程序,如

          $ pip install mysql-connector-python
          # or
          $ python pip install mysql-connector
          

          不完全清楚有什么区别,但是,两者中的第一个解决了问题。

          阿达什

          【讨论】:

            猜你喜欢
            • 2019-06-15
            • 2020-01-19
            • 1970-01-01
            • 2021-01-05
            • 2020-02-16
            • 2021-07-12
            • 2021-07-04
            • 2018-07-17
            • 2019-02-08
            相关资源
            最近更新 更多