### 5.1.13 IPv6 支持

[5.1.13.1 验证系统对 IPv6 的支持](ipv6-system-support.html)
[5.1.13.2 配置 MySQL 服务器以允许 IPv6 连接](ipv6-server-config.html)
[5.1.13.3 使用 IPv6 本地主机地址连接](ipv6-local-connections.html)
[5.1.13.4 使用 IPv6 非本地主机地址连接](ipv6-remote-connections.html)
[5.1.13.5 从 Broker 获取 IPv6 地址](ipv6-brokers.html)

MySQL 中对 IPv6 的支持包括以下功能：

-   MySQL 服务器可以接受来自通过 IPv6 连接的客户端的 TCP/IP 连接。例如，此命令通过 IPv6 连接到本地主机上的 MySQL 服务器：

    ```
    $> mysql -h ::1
    ```

    要使用此功能，必须满足以下两点：

    -   您的系统必须配置为支持 IPv6。看[第 5.1.13.1 节，“验证系统对 IPv6 的支持”](ipv6-system-support.html).

    -   除了 IPv4 连接之外，默认 MySQL 服务器配置还允许 IPv6 连接。要更改默认配置，请使用以下命令启动服务器[`绑定地址`](server-system-variables.html#sysvar_bind_address)系统变量设置为适当的值。看[第 5.1.8 节，“服务器系统变量”](server-system-variables.html).

-   MySQL 帐户名称允许 IPv6 地址使 DBA 能够为通过 IPv6 连接到服务器的客户端指定权限。看[第 6.2.4 节，“指定帐户名称”](account-names.html).IPv6 地址可以在语句中的帐户名中指定，例如[`创建用户`](create-user.html),[`授予`](grant.html)， 和[`撤销`](revoke.html).例如：

    ```
    mysql> CREATE USER 'bill'@'::1' IDENTIFIED BY 'secret';
    mysql> GRANT SELECT ON mydb.* TO 'bill'@'::1';
    ```

-   IPv6 函数支持在字符串和内部格式 IPv6 地址格式之间进行转换，并检查值是否代表有效的 IPv6 地址。例如，[`INET6_ATON()`](miscellaneous-functions.html#function_inet6-aton)和[`INET6_NTOA()`](miscellaneous-functions.html#function_inet6-ntoa)类似于[`INET_ATON()`](miscellaneous-functions.html#function_inet-aton)和[`INET_NTOA()`](miscellaneous-functions.html#function_inet-ntoa)，但除了处理 IPv4 地址外，还要处理 IPv6 地址。看[第 12.24 节，“其他功能”](miscellaneous-functions.html).

-   从 MySQL 8.0.14 开始，Group Replication 组成员可以使用 IPv6 地址在组内进行通信。一个组可以包含使用 IPv6 的成员和使用 IPv4 的成员的混合。看[第 18.5.5 节，“对 IPv6 以及混合 IPv6 和 IPv4 组的支持”](group-replication-ipv6.html).

    以下部分描述了如何设置 MySQL，以便客户端可以通过 IPv6 连接到服务器。
