前言:
如果对Navicat不够了解的话,在我们用这个工具连接本地数据库可能会遇到很多错误。本篇主要介绍一下Navicat无法连接本地数据库的各种解决方法。
工具:
数据库管理工具:Navicat Premium 15
过程:
问题1、防火墙没有关闭
1.1 咱们先输入“systemctl status firewalld.service”查看防火墙状态。如果显示“active (running)”,说明防火墙是开启状态,需要关闭Navicat才能进行连接
1.2 输入“service iptables stop”临时关闭防火墙,重启之后失效。输入“chkconfig iptables off”永久关闭防火墙,一般我做题就永久关闭,以免重启后还要重新设置
问题2、提示“Host IP is not allow to connect to this Mysql server”
2.1 这个表示这个IP没有访问远程数据库的权限,我们需要对这个IP添加访问权限。我们返回到虚拟机或者Xshell界面使用root帐号登陆Mysql
命令:“mysql -u root -p密码”,看好“-p”和“密码”之间只连在一起的,没有空格。以下图所示,我的root密码是“sunqiang@123”,我输入的命令是“mysql -u root -psunqiang@123”
2.2 接下来进行授权操作
命令:GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION; [密码]根据自身情况进行修改,注意命令最后面的分号别忘记!
2.3 重新载入(刷新),mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效
命令:FLUSH PRIVILEGES;
我也是遇到了类似的问题,采取了简单粗暴的方法,直接关闭防火墙。
非常感谢,终于找到方法了
2003-can’t connect to MySQL server on ‘localhost'(10061),这个是什么原因
已确认其他机器上连接是可正常访问的,现在本地无法连接。请问这是什么原因?
为什么我用navicat8_mysql_cs连接本地mysql总是出现
1045 – Access denied for user ‘root’@’localhost'(using password:YES)
我的是直接连到了本地主机的数据库,并没有连上虚拟机中linux里的mysql数据库,IP是虚拟机 的,网络使用的是桥接模式
我使用ssh连接无法连接,显示密码验证错误