解决Navicat连接服务器mysql连接不上的问题

服务器 0

可以按照以下办法尝试解决

(1)默认远程ip是无法连接登录服务器mysql的,只能在mysql所在服务器登录mysql

使用

use mysql;

select user,host from user;

查看权限只有localhost

然后使用命令添加权限

grant all privileges on *.* to root@"%" identified by '123456' with grant option;

可能会出现如下错误

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

产生的原因:

  自定义密码太简单,出现了不符合密码策略的问题

查看 mysql 初始的密码策略

SHOW VARIABLES LIKE 'validate_password%';

 

发现长度和策略都有要求

 # 如果你想设置简单密码,需要降低Mysql的密码安全级别

# 密码安全级别低

set global validate_password_policy=LOW;

# 密码长度最低4位即可

 set global validate_password_length=4;

 

然后该问题解决。

(2)有可能mysql绑定的是回环地址127.0.0.1

使用

netstat -anp | grep 3306 查看

 

如果是127.0.0.1可以在  /etc/my.cnf中

找到:bind-address = 127.0.0.1

去除 IP 地址绑定,把它改为:bind-address = 0.0.0.0

#然后重启 MySQL Server

systemctl restart mysqld

 

(3)可能是服务器防火墙不允许3306连接

firewall-cmd --list-ports

#使用命令查看允许连接的端口

 

开放3306端口

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

 

重启防火墙

 

问题解决。 

也许您对下面的内容还感兴趣: