-
navicat连接不上有许多原因,以下是对一些常见原因的罗列(以下以CentOS为例)
-
第一,首先确定数据库能否正常使用
- 在服务器linux终端进去mysql(可以进去代表可以正常使用)
mysql -u "username" -p "password"
-
第二,查看端口号是否一致(一般是3306)
show global variables like 'port'
-
第三,检测远程能否正常连接服务器
- 测试网络是否连通
ping "服务器IP" # 数据包: 已发送 = 4,已接收 = 0,丢失 = 4 (100% 丢失) # 正在 Ping 172.27.39.229 具有 32 字节的数据: # 来自 172.27.39.229 的回复: 字节=32 时间=31ms TTL=63 # 来自 172.27.39.229 的回复: 字节=32 时间=38ms TTL=63 # 来自 172.27.39.229 的回复: 字节=32 时间=57ms TTL=63 # 来自 172.27.39.229 的回复: 字节=32 时间=32ms TTL=63
-
第四,查看防火墙是否运行
-
服务器内部防火墙
-
首先是查看centos7的防火墙的状态,查看的命令为:
sudo systemctl status firewalld
查看后,看到**active(running)**就意味着防火墙打开了
-
如果想关闭防火墙,命令为:
sudo systemctl stop firewalld
关闭后查看是否关闭成功,如果看到**inactive(dead)**就意味着防火墙关闭了。
-
打开防火墙的命令为:
sudo systemctl start firewalld
-
上面打开和关闭防火墙都是临时的,重启电脑后又会恢复到默认的状态(我的默认状态是打开)。
-
如果是想重启后防火墙还是处于关闭的状态,得使用命令:
sudo systemctl disable firewalld
-
-
最后是端口权限问题
- 如果防火墙被拦截,需要放行端口。
- 如果防火墙没有拦截,则要考虑服务内部是否配置限定IP访问。
- 在/etc/下找到my.cnf
- 打开该文件
- 找到bind-address=127.0.0.1(如果没有可以跳过)
- 注释掉bind-address或者bind-address=0.0.0.0