【问题标题】:Why is my MySQL IP address different than physical server IP it is running?为什么我的 MySQL IP 地址与它运行的物理服务器 IP 不同?
【发布时间】:2016-12-11 17:55:31
【问题描述】:

这可能是一个非常愚蠢的问题,但我*是 MySQL 的新手,我刚刚发现 MySQL 有不同的 ip,即 127.0.0.1 及其主机名 (localhost) 而不是机器ip是192.168.1.3,机器主机名是ceres,为什么会这样?

我使用 MySQL 工作台连接到在不同机器上运行的 MySQL:

它显示它在 pi@192.168.1.3

上将我登录到 mysql root 用户到 127.0.0.1

那么

我想使用arduino MCU远程向数据库插入数据,我绝对不会写127.0.0.1

【问题讨论】:

  • 在终端中输入ping ceres - 它会返回什么?然后,尝试通过 IP(与主机名)连接 - 有什么变化吗?无论如何,MySQL 可以(并且可能)绑定到不同的接口。环回 (127.0.0.1) 和机器网络接口:都表示到同一个 MySQL 实例的连接端点。
  • 我收到来自 192.168.1.3 的回复,但我无法使用具有 3306 端口号的相同 ip 连接到 MySQL
  • 您还需要检查您是否设置了正确的 GRANT。 SHOW GRANTS FOR 'user'@'IP_address';。您可以检查设置了 GRANT 的用户和主机SELECT user, host FROM mysql.user
  • 以 MySQL root 身份登录时运行它;使用 mysql;将 */.*/ 上的所有权限授予由 yourRootPassword 标识的 'root'@'%';不要包含正斜杠,而是输入星号点星号。
  • @JosephMwema 我在 /etc/mysql/my.cnf 文件中注释了指向 127.0.0.1 的绑定地址

标签: mysql mysql-workbench mysqlconnection


【解决方案1】:

每台服务器的 IP 为 127.0.0.1。如果你想连接到安装在你登录的机器上的 MySQL,你将使用 IP 127.0.0.1 或 localhost 但是如果你想通过另一台机器连接到该机器上的 MySQL,你必须识别它的 IP,以便你可以通过这个IP连接。这就是为什么您将通过 IP 192.168.1.3 而不是 127.0.0.1 远程连接到 MySQL 服务器的原因。 localhost 仍然是 IP 127.0.0.1

【讨论】:

  • 我刚刚用不同的关键字再次谷歌搜索,发现我需要更改MySQL的绑定地址
【解决方案2】:

127.0.0.1是环回接口,当你尝试本地连接mysql服务时使用(在运行mysql服务的同一台服务器上)。

如果你需要从另一台机器连接到 mysql 服务,你需要它的 IP 地址。您可以使用ifconfig 来查看分配给服务器的IP 地址。

【讨论】:

    【解决方案3】:

    您需要了解一些关于 TCP/IP 的知识才能了解这里发生的事情。每个 TCP/IP 堆栈(实现)在地址 127.0.0.1(用于 IPv4)或::1(用于 IPv6)下都有内部环回接口。这使得访问本地计算机上的堆栈变得容易,而无需知道它的 TCP/IP 地址(或者即使它没有)。

    然后,参与 TCP/IP 网络的每台机器都需要一个在该网络中已知的地址(在您的情况下为 192.168.1.3)。当您在本地计算机上工作时,无论您使用的是公共 IP 地址还是环回接口都没有关系。第三个选项是名称localhost,它解析为环回接口。但请注意:最终是 IPv4 还是 IPv6 变体取决于操作系统。

    如您所知,您可以为用户指定主机,这决定了它可以从哪个主机连接。这里user@localhostuser@127.0.0.1(或user@::1不是同一个主机。为了用户的方便,MySQL 终端隐含地将 localhost 和环回 IP 地址视为相同,但其他客户端则不这样做。这里提到的绑定地址通常根本不涉及。这适用于此处不相关的特殊情况。在 10 多年的时间里,我从来没有为 MySQL 设置绑定地址。

    更新:我希望反对者对他们的行为发表评论,以表明我的回答是否需要改进,或者他们只是无知。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-23
      • 2021-01-03
      • 1970-01-01
      • 2017-07-15
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 2012-04-24
      相关资源
      最近更新 更多