8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

无法连接到 MySQL 服务器错误 111

user2024 2月前

48 0

我在 Linux 机器 IP = 192.168.1.100 上安装了 mysql 服务器,但是当我尝试连接到此 IP 时总是出现错误 (111)。但使用 localhost 和 127.0.0.1 就可以了。beer@beer-laptop# ifconfig | grep \'inet ad...

我在 Linux 机器上安装了 mysql 服务器,IP = 192.168.1.100,但是当我尝试连接到这个 IP 时总是出现错误(111)。但使用 localhost 和 127.0.0.1 就可以了。

beer@beer-laptop# ifconfig | grep "inet addr"
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0

beer@beer-laptop# mysql -ubeer -pbeer -h192.168.1.100
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.100' (111)

beer@beer-laptop# mysql -ubeer -pbeer -hlocalhost
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 160
Server version: 5.1.31-1ubuntu2 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> 

beer@beer-laptop# mysql -ubeer -pbeer -h127.0.0.1
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 161
Server version: 5.1.31-1ubuntu2 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> 

从另一台机器连接也会出现错误 111。

another@another-laptop# mysql -ubeer -pbeer -h192.168.1.100
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.100' (111)

在这种情况下,使用 localhost/127.0.0.1 和 192.168.1.100 有何区别。我不知道如何从另一台机器连接到这个数据库。

请帮忙。谢谢。

帖子版权声明 1、本帖标题:无法连接到 MySQL 服务器错误 111
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由user2024在本站《ubuntu》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 这可能意味着您的 MySQL 服务器仅监听本地主机接口。

    如果有如下几行:

    bind-address = 127.0.0.1
    

    在您的 my.cnf configuration file ,您应该注释它们 (在行首添加 #) ,然后重新启动 MySQL。

    sudo service mysql restart
    

    当然,要做到这一点,您必须是服务器的管理员。

  • 如何知道mysql my.cnf位置:.com/questions/2482234/…

  • 我按照答案中给出的方法操作,但仍然无法让它工作。然后我发现 \'bind-address\' 参数位于 \'/etc/mysql/mysql.conf.d/mysqld.cnf\' 文件中。在那里注释掉它,它就工作了!

  • 较新版本的 ubuntu >= 16.04 可能在 /etc/mysql/mysql.conf.d/myqld.cnf 中包含此行

  • 111 表示 连接被拒绝 ,这又意味着你的 mysqld 只监听接口 localhost

    要改变它,您可能需要查看 bind-address 部分 mysqld 中的值 my.cnf

  • 还值得检查端口号是否有效。 :3306 和 :3307 不匹配也会导致 111 错误。

  • @NXT,我甚至不知道 mysql 是否可以监听不同接口上的不同端口,但即使可以,这种情况也不太可能发生(考虑到原始帖子中的症状)。然后可以有防火墙规则等。有很多方法可以实现这一点,但可能性不同……

  • 并不总是这样。我的 my.cnf 文件没有任何 bind-address 或 skip-networking 行,但我还是收到相同的错误。也没有安装防火墙。没有办法了。

  • 嗯,111 确实总是意味着连接被拒绝 :) 并且由于其他证据,这种特殊情况下仅使用 localhost。如果您提供有关您案例的更多详细信息,我可能会提供帮助?此外,根据您现在的系统,您的配置可能会分散在多个文件中。

  • 如果所有前面的答案都没有给出任何解决方案,您应该检查您的用户权限。

    如果您可以 root 以 mysql 身份登录,那么您应该添加以下内容:

    CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY  '***';
    GRANT ALL PRIVILEGES ON * . * TO  'root'@'192.168.1.100' IDENTIFIED BY  '***' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
    

    然后尝试使用 再次连接 mysql -ubeer -pbeer -h192.168.1.100 。它应该可以工作。

  • 看起来这是一个比通过注释掉 127.0.0.1 行向整个网络开放 mysql 更好的解决方案。它应该是最好的解决方案。

  • 如果您正在运行 cPanel/WHM,请确保 IP 在防火墙中被列入白名单。您还需要将该 IP 添加到您尝试连接的 cPanel 帐户中的远程 SQL IP 列表中。

  • 判断错误是否由防火墙引起的最佳方法是,错误返回需要很长时间。如果是 MySQL 导致的问题,响应应该非常迅速。

返回
作者最近主题: