MySQL 未监听端口 3306

MySQL 未监听端口 3306

我遇到了 MySQL 问题。我可以从本地访问(也可以通过 Web phpmyadmin 访问),但无法从远程计算机访问。

配置:

  • 操作系统:CentOS7
  • MySQL:MySQL 社区 8

防火墙已打开服务端口。我可以通过此命令进行验证。

防火墙

我在 MySQL 中也有两个用户(一个主机为 localhost 的用户和一个主机为 % 的用户)mysql_用户

但当我从另一个网络检查端口时,我无法访问它

检查器

我是不是忘了什么?还是我犯了错误?任何帮助都将不胜感激

答案1

通常,您需要编辑/etc/my.cnf(这是 CentOS 7 的位置)文件并进行以下更改:

  1. 添加以下行:bind-address = 0.0.0.0
  2. 通过在前面skip-networking放置一个来注释掉该行。#

IE:

[mysqld]
bind-address    = 0.0.0.0
# skip-networking

第一行定义这是针对 MySql 守护进程的。第二行告诉 MySql 绑定到网络接口(0.0.0.0即所有接口)。第三行告诉 MySql 不要跳过网络配置例程。

请注意,其他发行版可能将 MySQL 配置文件放在不同的文件夹位置。

答案2

确保你的防火墙是打开的,否则可能会拦截你。

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

这将验证您的服务器上的端口 3306 是否打开并且是否接受与 MySQL 的连接。

更新:我没有看到您打开端口的部分。取消此回复

相关内容