【问题标题】:MySQL-db lib for Python 3.x?用于 Python 3.x 的 MySQL-db 库?
【发布时间】:2010-09-27 22:06:50
【问题描述】:

那么,寻找一个与py3k/py3.0/py3000兼容的mysql-db-lib,有什么想法吗?谷歌一无所获。

【问题讨论】:

标签: python mysql python-3.x


【解决方案1】:

看来 MySQLdb 几乎是一个死项目。然而,PyMySQL 是一个 dbapi 兼容、纯 python 实现的 mysql 客户端,它支持 python 3。

编辑:还有MySQL Connector/Python。同样的想法。

【讨论】:

  • 实际上,我们无法让 MySQL Connector/Python 与 Python 3.3 和 SQLAlchemy 一起工作。 PyMySQL 似乎工作得很好。
  • pip install mysql-connector-python 适用于 Python 2.7.11 和 3.5.1。关注poor performance相对于MySQLdb。
【解决方案2】:

我也在找它,但也没找到,所以我将 MySQL-python-1.2.3 移植到 py3k 你可以在这里阅读它 http://sourceforge.net/p/mysql-python/discussion/70460/thread/61e3a3c9/

【讨论】:

【解决方案3】:

目前有几个将 Python 3 与 mysql 结合使用的选项:

https://pypi.python.org/pypi/mysql-connector-python

  • Oracle 官方支持
  • 纯蟒蛇
  • 有点慢
  • 与 MySQLdb 不兼容

https://pypi.python.org/pypi/pymysql

  • 纯蟒蛇
  • 比 mysql-connector 快
  • 几乎完全兼容MySQLdb,调用pymysql.install_as_MySQLdb()

https://pypi.python.org/pypi/cymysql

  • 带有可选 C 加速的 pymysql 分支

https://pypi.python.org/pypi/mysqlclient

  • Django 推荐的库。
  • 原始 MySQLdb 的友好分支,希望有一天能合并回来
  • 最快的实现,因为它是基于 C 的。
  • 与 MySQLdb 最兼容,因为它是一个 fork
  • Debian 和 Ubuntu 使用它来提供python-mysqldbpython3-mysqldb 软件包。

这里的基准:https://github.com/methane/mysql-driver-benchmarks

【讨论】:

    【解决方案4】:

    关于 MySQLdb 的未来计划,你可能想问作者(Andy Dustman)。
    他的博客在这里:http://mysql-python.blogspot.com/

    【讨论】:

    • 对于像我一样在 4.5 年后找到这篇文章的人,根据您的帖子,基于该博客,mysql-db 对 Python 3 的支持即将推出。哇哦。
    • 对于那些像我一样在 5 年后发现这篇文章的人,看起来该博客自上述评论以来一直没有更新,而且 Python 3 对 MySQLdb 的支持仍然不存在。 :(
    • 对于那些像我一样在 7-8 年后发现这篇文章的人,这里有一个 mysql 的官方连接器:dev.mysql.com/downloads/connector/python ...历史发展得如此缓慢...
    • 在 2019 年,这个答案帮助了我:stackoverflow.com/a/25724855/4530648
    【解决方案5】:

    这里是 Python 3 的工作存储库:https://github.com/davispuh/MySQL-for-Python-3

    【讨论】:

      【解决方案6】:

      不确定你是否还在寻找,但你可以试试这个: http://sourceforge.net/projects/mypysql/

      【讨论】:

      • 有趣。请注意,这是一个非常小的库,功能很少,不支持 PEP 249。
      • 好像死了。也许渴望峡湾,但在这种情况下不要表现出来。
      【解决方案7】:

      可以下载兼容Python3的mysql-connector-python模块:

      http://rpm.pbone.net/index.php3/stat/4/idpl/15667200/dir/rawhide/com/mysql-connector-python3-0.3.2-2.fc16.noarch.rpm.html

      获取“源 RPM”,解压缩并使用它(例如,将其放入您的 PYTHONPATH,然后查看示例)。

      【讨论】:

        【解决方案8】:

        目前您最好使用 Python 2.x。将所有 Python 包移植到 3.x 还需要一段时间,我预计目前使用 3.x 编写库或应用程序会非常令人沮丧。

        【讨论】:

          【解决方案9】:

          有一个官方的 Python 2/3 库,可从 MySQL 网站下载。 Oracle 于 2012 年 9 月 29 日向公众发布了 1.0.7 版。

          它是纯 Python,适用于 MySQL 4.1+

          在此处查看更多详细信息:http://dev.mysql.com/doc/connector-python/en/connector-python.html

          我目前正在将它与 MySQL 5.5 和 Python 3.2 一起使用,到目前为止没有任何问题 :)

          【讨论】:

          • 轶事:Python 3.3 + SQLAlchemy + Python Connector 遇到问题。
          猜你喜欢
          • 1970-01-01
          • 2019-03-27
          • 1970-01-01
          • 2020-08-27
          • 2017-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多