原文地址:MySQL 远程访问失败的原因及解决方案_mysql远程访问失败-CSDN博客
文章目录
1、失败的原因
1.1、 `/etc/mysql/my.cnf`文件中`bind-address = 127.0.0.1`没有注释掉
1.2、 端口`3306`没有开放,使用 `ss -tlnp` 命令查看网络端口开启状态
1.3、 在`MySQL`数据库`user`表中`host`字段值为`localhost`
2、解决方案
2.1、`/etc/mysql/my.cnf`文件中,在`bind-address = 127.0.0.1`前面加`#`注释该行代码
2.2、在`CentOS 7`中需要通过如下命令开放`3306`端口
2.3、修改`MySQL`数据库`user`表,以允许远程访问
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
1
2
3
4
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;
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/github_38336924/article/details/82455500