Documentation Home

2.9.6 配置 SSL 库支持

需要一个 SSL 库来支持加密连接、随机数生成的熵以及其他与加密相关的操作。

如果您从源代码分发版编译 MySQL, CMake 会将分发版配置为默认使用已安装的 OpenSSL 库。

要使用 OpenSSL 进行编译,请使用以下过程:

  1. 确保您的系统上安装了 OpenSSL 1.0.1 或更高版本。如果安装的 OpenSSL 版本低于 1.0.1, CMake在 MySQL 配置时会产生错误。如果需要获取 OpenSSL,请访问http://www.openssl.org

  2. CMake选项确定 使用哪个 SSL 库来编译 MySQL(请参阅 第 2.9.7 节,“MySQL 源配置选项”)。默认值为,它使用 OpenSSL。要明确这一点,请在 CMake命令行上指定该选项。例如: WITH_SSL -DWITH_SSL=system

    cmake . -DWITH_SSL=system

    该命令将分发配置为使用已安装的 OpenSSL 库。或者,要显式指定 OpenSSL 安装的路径名,请使用以下语法。如果您安装了多个版本的 OpenSSL,这将很有用,以防止CMake选择错误的版本:

    cmake . -DWITH_SSL=path_name

    通过在 EL7 上使用WITH_SSL=openssl11在 EL8上使用 WITH_SSL=openssl3, 从 v8.0.30 开始支持替代 OpenSSL 系统包。身份验证插件(例如 LDAP 和 Kerberos)被禁用,因为它们不支持这些替代版本的 OpenSSL。

  3. 编译并安装发行版。

要检查mysqld服务器是否支持加密连接,请检查 have_ssl系统变量的值:

mysql> SHOW VARIABLES LIKE 'have_ssl';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_ssl      | YES   |
+---------------+-------+

如果值为YES,则服务器支持加密连接。如果值为 DISABLED,则服务器能够支持加密连接,但未使用适当的 选项启动以启用要使用的加密连接;参见 第 6.3.1 节,“配置 MySQL 以使用加密连接”--ssl-xxx