【发布时间】:2019-01-19 09:41:57
【问题描述】:
我知道 bind-address 属性存储了可以连接到 mysql 服务器的 IP 地址(或 IP 地址范围),但我不明白 *(星号)值代表什么。它是否与 0.0.0.0 同义(即:接受来自所有地址的连接)?
【问题讨论】:
标签: mysql
我知道 bind-address 属性存储了可以连接到 mysql 服务器的 IP 地址(或 IP 地址范围),但我不明白 *(星号)值代表什么。它是否与 0.0.0.0 同义(即:接受来自所有地址的连接)?
【问题讨论】:
标签: mysql
* 导致服务器侦听所有地址,IPv4 和 IPv6,而 0.0.0.0 仅导致它侦听所有 IPv4 地址。
来自"5.1.7 Server Command Options":
--bind-address=addr(...)
如果地址为 *,则服务器接受所有服务器主机 IPv4 接口上的 TCP/IP 连接,如果服务器主机支持 IPv6,则接受所有 IPv6 接口上的 TCP/IP 连接。使用此地址可允许所有服务器接口上的 IPv4 和 IPv6 连接。 (...)
如果地址为 0.0.0.0,则服务器接受所有服务器主机 IPv4 接口上的 TCP/IP 连接。 (...)
【讨论】:
bind-address =* 表示使用 INADDR_ANY 和/或 IN6ADDR_ANY 在 IPv4 或 IPv6 或两者上绑定。
这意味着任何可以连接到您系统的客户端都可以尝试连接到 MySQL(因此您的安全性需要在 MySQL 中进行良好配置)。
【讨论】: