MySQL Connector/Python 开发者指南  /  Connector/Python 版本

第 3 章 Connector/Python 版本

本节介绍版本发布(如 8.0.34),以及两个实现(C 扩展和纯 Python)的特定说明。

Connector/Python 版本

下表总结了可用的 Connector/Python 版本。对于已达到正式发布 (GA) 状态的系列,不再支持 GA 版本之前的系列中的开发版本。

注意

MySQL 连接器和其他 MySQL 客户端工具和应用程序现在将其版本号的第一位数字与其支持的(最高)MySQL 服务器版本同步。例如,MySQL Connector/Python 8.0.12 将被设计为支持 MySQL 服务器版本 8(或更低版本)的所有功能。此更改可以轻松直观地确定哪个客户端版本用于哪个服务器版本。

Connector/Python 8.0.4 是第一个使用新编号的版本。它是 Connector/Python 2.2.3 的后继版本。

表 3.1 Connector/Python 版本参考

Connector/Python 版本 MySQL 服务器版本 Python 版本 连接器状态
9.1.0 8.0 及更高版本 3.13, 3.12, 3.11, 3.10, 3.9, 3.8 正式发布
8.4.0 和 9.0.0 8.0 及更高版本 3.12, 3.11, 3.10, 3.9, 3.8 正式发布
8.1.0 至 8.3.0 5.7 及更高版本 3.12 (8.2.0+), 3.11, 3.10, 3.9, 3.8 正式发布
8.0 8.0, 5.7, 5.6, 5.5 3.11、3.10、3.9、3.8、3.7、(8.0.29 之前的 3.6)、(8.0.24 之前的 2.7 和 3.5) 正式发布
2.2 (继续为 8.0) 5.7, 5.6, 5.5 3.5, 3.4, 2.7 开发里程碑,无发布
2.1 5.7, 5.6, 5.5 3.5, 3.4, 2.7, 2.6 正式发布
2.0 5.7, 5.6, 5.5 3.5, 3.4, 2.7, 2.6 正式发布,最终版本于 2016-10-26 发布
1.2 5.7, 5.6, 5.5 (5.1, 5.0, 4.1) 3.4, 3.3, 3.2, 3.1, 2.7, 2.6 正式发布,最终版本于 2014-08-22 发布

注意

括号内的 MySQL 服务器和 Python 版本已知可与 Connector/Python 配合使用,但不受官方支持。这些版本的错误可能无法修复。

注意

Connector/Python 不支持旧的 MySQL 服务器身份验证方法,这意味着 4.1 之前的 MySQL 版本将无法使用。

注意

在 macOS x86_64 ARM 上:Python 3.7 不支持 c-ext 实现;请注意,这不是 macOS 上的默认 Python 版本。

Connector/Python 实现

Connector/Python 以两种方式实现 MySQL 客户端/服务器协议

  • 作为纯 Python;一个用 Python 编写的实现。它依赖于 Python 标准库。

    连接器的 X DevAPI 变体需要 Python Protobuf。所需版本为 4.25.3,在 Connector/Python 9.0.0 之前为 >= 4.21.1、<= 4.21.12。

  • 作为与 MySQL C 客户端库交互的 C 扩展。此协议的实现依赖于客户端库,但可以使用 MySQL 服务器软件包提供的库(请参阅 MySQL C API 实现)。

客户端/服务器协议的两种实现都没有任何第三方依赖项。但是,如果您需要 SSL 支持,请验证您的 Python 安装是否已使用 OpenSSL 库进行编译。

TLS 支持

默认情况下,当策略级别设置为 DEFAULT 时,EL8 和 Debian 10 支持 TLSv1.2 及更高版本。为了支持 TLSv1 和 TLSv1.1,需要将策略更改为 LEGACY。这意味着默认的 EL8/DEB10 设置无法使用 C 扩展建立 TLSv1 和 TLSv1.1 连接。其他平台将来可能会更改其默认行为。

从 Connector/Python 8.0.26 开始,TLSv1.0 和 TLSv1.1 连接协议已弃用,并且在 Connector/Python 8.0.28 中删除了对它们的支持。

注意

Connector/Python 8.0.32 中删除了对 distutils 的支持。

有关发行的 Python 术语

  • 构建发行版:以特定平台的原生打包格式创建的包。它包含源代码和平台无关的字节码。Connector/Python 二进制发行版是构建发行版。

  • 源代码发行版:仅包含源文件的发行版,通常与平台无关。