Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
在某些情况下无法访问mysql服务器_Mysql - Fatal编程技术网

在某些情况下无法访问mysql服务器

在某些情况下无法访问mysql服务器,mysql,Mysql,我的情况如下: 我已经在我的服务器上运行mysqld了 telnet localhost 3306提供访问权限 telnet 127.0.0.1 3306提供访问权限 telnet my_host_name 3306不提供访问权限 我的主机名3306的telnet ip不允许访问 我检查了端口:3306已打开。我的防火墙没有阻止这个端口 在mysql日志文件中,我有一条关于日志序列的消息,它是“将来” 问题与此消息之间是否存在关系 我的数据库使用Innodb。检查 许多发行版都将此设置作为默

我的情况如下:

  • 我已经在我的服务器上运行mysqld了
  • telnet localhost 3306提供访问权限
  • telnet 127.0.0.1 3306提供访问权限
  • telnet my_host_name 3306不提供访问权限
  • 我的主机名3306的telnet ip不允许访问
  • 我检查了端口:3306已打开。我的防火墙没有阻止这个端口
在mysql日志文件中,我有一条关于日志序列的消息,它是“将来”

问题与此消息之间是否存在关系

我的数据库使用Innodb。

检查

许多发行版都将此设置作为默认设置。在my.cnf中,查找:

skip-networking

并将该行注释掉。

如果您刚刚安装了MySQL,则默认情况下禁用远程访问。如果是这种情况,您需要编辑配置以允许它,然后重新启动mysqld。关于如何做到这一点,有几个指令集。

您的问题似乎与mysql守护程序的绑定地址有关


您可以查看有关绑定到多个地址(localhost和公共IP地址)的其他信息。

由于您可以连接到localhost,我们知道您已经配置了绑定地址设置

在my.cnf(或my.ini)文件中查找以下行:

bind-address = 127.0.0.1
上面这一行只允许您连接到本地地址。MySQL将自己绑定到环回IP,而不绑定其他内容

要能够连接到计算机上的所有IP地址(绑定到所有地址),包括本地地址,请将配置更改为以下内容:

bind-address = 0.0.0.0
或者,由于默认值为
0.0.0.0
,因此可以这样注释:

#bind-address = 0.0.0.0
然后重启MySQL服务器


您的错误消息与此问题无关。

您的my.cnf中是否有“bind_address 127.0.0.1”?抱歉:我忘记了这些基本信息。。。我在WindowsServer2003上运行,mysql版本5.2绑定。。。my.ini中不存在跳过网络my.ini中不存在跳过网络由于OP可以通过localhost和127.0.0.1进行连接,
跳过网络
不是问题所在。在my.ini中不存在此行搜索您的计算机中的所有my.ini和my.cnf以及启动命令行选项。如果
bind address
不是问题,那么这就不是一个MySQL问题。问题出在别处。mysqld以指向my.ini文件的路径开始。问题是“别处”!在这种情况下,绑定到任意IP:bind address=0.0.0.0,然后telnet您的公共IP端口3306,以验证mysqld服务器是否按照预期进行侦听。