原因:
1、数据库没有授权
2、服务器防火墙没有开放3306端口
一、数据库没有授权
对于mysql数据库没有授权,只需要用一条命令就可以了。
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
输入后使修改生效还需要下面的语句
mysql>FLUSH PRIVILEGES;
(推荐教程:centos教程)
二、服务器防火墙没有开放3306端口
centos 有两种防火墙 FirewallD和iptables防火墙
centos7 使用的是FirewallD防火墙。
FirewallD 是 iptables 的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数 Linux 发行版的仓库中都有。与直接控制 iptables 相比,使用 FirewallD 有两个主要区别:
1、FirewallD 使用区域和服务而不是链式规则。
2、它动态管理规则集,允许更新规则而不破坏现有会话和连接。
FirewallD 是 iptables 的一个封装,可以让你更容易地管理 iptables 规则 - 它并不是 iptables 的替代品。虽然 iptables 命令仍可用于 FirewallD,但建议使用 FirewallD 时仅使用 FirewallD 命令。
FirewallD防火墙开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
systemctl restart firewalld.service
以上就是centos7下无法远程连接数据库的详细内容,更多请关注php中文网其它相关文章!
声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
- 上一篇:centos如何安装qt
- 下一篇:centOS命令行中文乱码解决方法
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论