背景: 今天在阿里云CentOs里部署MySQL,用ssh连上可以进入数据库,但是本地Navicat就是连不上。如图:
过程:到处看帖子,各种尝试,过程如下:
1.有的帖子提醒要先开启mysql服务:systemctl satrt mysqld.service 这个等同于废话,肯定会先开服务再尝试连接的。
2.有的提醒要修改配置文件:vim /etc/my.cnf 将文件中的bind-address =127.0.0.1注释掉。但是我的文件压根就没有这句话,应该是版本不同,所以忽视。
3.有的提醒要授权给网络上其他主机访问数据库,这一点还是有用的:进入MySQL命令之后:
use mysql;
grant all privileges on * . * to ‘root’@’%’ identified by ‘你的密码’;
flush privileges;
这里%表示所以主机,而不只是localhost
4.有的提醒要修改一下密码:基本上没啥用
5.有的提示开放3306端口,我的服务器防火墙都是关闭的,不存在这个问题,但是为了排除,我由打开防火墙,开放3306端口。这一步其实有用,但是我弄错了地方。
<