MySQL 远程访问失败的原因及解决方案

版权声明:本文为博主原创文章,网络媒体转载请注明出处,否则属于侵权行为 https://blog.csdn.net/github_38336924/article/details/82455500

MySQL 远程访问失败的原因解决方案

1、失败的原因

1.1、 /etc/mysql/my.cnf文件中bind-address = 127.0.0.1没有注释掉

这里写图片描述

1.2、 端口3306没有开放,使用 ss -tlnp 命令查看网络端口开启状态

这里写图片描述
如上图,MySQL仅允许本地访问

1.3、 在MySQL数据库user表中host字段值为localhost

这里写图片描述

2、解决方案

2.1、/etc/mysql/my.cnf文件中,在bind-address = 127.0.0.1前面加#注释该行代码

这里写图片描述

2.2、在CentOS 7中需要通过如下命令开放3306端口

# 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
systemctl restart firewalld.service

2.3、修改MySQL数据库user表,以允许远程访问

user表中Host字段值可以是%代表所有,也可以192.168.0.1指定IP

# 开启root用户远程访问
UPDATE user SET Host = '%' WHERE User = 'root';
flush privileges;

# 创建新的远程访问用户 `推荐`
GRANT ALL PRIVILEGES ON *.* TO 'dadeity'@'%' IDENTIFIED BY '[email protected]' WITH GRANT OPTION;
flush privileges;

猜你喜欢

转载自blog.csdn.net/github_38336924/article/details/82455500