Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';无法连接到MySQL服务器错误111_Mysql_Linux_Mysql Error 2003 - Fatal编程技术网

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

Can';无法连接到MySQL服务器错误111,mysql,linux,mysql-error-2003,Mysql,Linux,Mysql Error 2003,我在linux box IP=192.168.1.100上安装了mysql服务器,但当我尝试连接到此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.

我在linux box IP=192.168.1.100上安装了mysql服务器,但当我尝试连接到此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> beer@beer-笔记本电脑#ifconfig | grep“inet地址” inet地址:127.0.0.1掩码:255.0.0.0 inet地址:192.168.1.100 Bcast:192.168.1.255掩码:255.255.255.0 beer@beer-笔记本电脑#mysql-ubeer-pbeer-h192.168.1.100 错误2003(HY000):无法连接到“192.168.1.100”(111)上的MySQL服务器 beer@beer-笔记本电脑#mysql-ubeer-pbeer-hlocalhost 欢迎使用MySQL监视器。命令以结束;或\g。 您的MySQL连接id是160 服务器版本:5.1.31-1ubuntu2(Ubuntu) 键入“帮助;”或“\h”以获取帮助。键入“\c”以清除缓冲区。 mysql> beer@beer-笔记本电脑#mysql-ubeer-pbeer-h127.0.0.1 欢迎使用MySQL监视器。命令以结束;或\g。 您的MySQL连接id是161 服务器版本:5.1.31-1ubuntu2(Ubuntu) 键入“帮助;”或“\h”以获取帮助。键入“\c”以清除缓冲区。 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) another@another-笔记本电脑#mysql-ubeer-pbeer-h192.168.1.100 错误2003(HY000):无法连接到“192.168.1.100”(111)上的MySQL服务器 在这种情况下,使用localhost/127.0.0.1和192.168.1.100之间的差异如何。 我不知道如何从另一台机器连接到此数据库

请帮忙。 谢谢。

111表示连接被拒绝,这反过来意味着您的mysqld只监听
localhost
接口


要更改它,您可能需要查看
my.cnf
文件
mysqld
部分中的
bind address
值。

这可能意味着您的MySQL服务器只在侦听本地主机接口

如果您有这样的行:

bind-address = 127.0.0.1
在您的应用程序中,您应该对它们进行注释(在行的开头添加一个#),然后重新启动MySQL

sudo service mysql restart

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

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

如果您可以以
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重新连接。它应该可以工作。

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

显然,他没有
跳过网络
行;-)如何知道mysql my.cnf的位置:但是当您可以从mysql工作台连接到它时会发生什么?我也有同样的问题。我遵循了答案中给出的内容,但仍然无法让它发挥作用。然后我发现“bind address”参数位于“/etc/mysql/mysql.conf.d/mysqld.cnf”文件中。在那边发表了评论,它成功了!更新版本的ubuntu>=16.04可能在/etc/mysql/mysql.conf.d/myqld.cnfi中有这一行。不要认为与用户权限相关的错误会导致错误111。它实际上是有效的,我也得到了111个错误。看起来这是一个比通过注释127.0.0.1行向整个网络开放mysql更好的解决方案。这应该是最好的解决方案。还值得检查端口号是否有效。不匹配的
:3306
:3307
也会导致111个错误。@NXT,我甚至不知道mysql是否可以监听不同接口上的不同端口,但这是非常不可能的情况(考虑到原始帖子中的症状),即使可以。然后可能会有防火墙规则等。有很多方法可以实现这一点,但可能性不同…并不总是意味着这一点。我的
My.cnf
文件没有任何
bind address
skip networking
行,但我得到了相同的错误。也没有安装防火墙。没有主意了。111总是意味着连接被拒绝:)而本地主机只是在这个特殊的情况下,由于其他证据。如果你能提供更多关于你的案例的细节,我能帮上忙吗?此外,根据您当前的系统,您可能会将配置分散在多个文件中。如果我在mysqld中没有bind address值,该怎么办?一个很好的“告诉”方法是,如果是防火墙导致错误,那么返回错误将需要相当长的时间。如果MySQL造成了问题,那么响应应该非常迅速。你能解释一下这是怎么做到的吗?