Navcat连接myslq数据库报错:2003-Can‘t connect to MySQL server on '192.168.65.132'(10060)/navicat创建数据库报错1044-Access denid for user

 问题一

使用Navcat连接银河麒麟虚拟机中的myslq数据库报错:2003-Can‘t connect to MySQL server on '192.168.65.132'(10060)

问题二:navicat创建数据库报错1044-Access denid for user

 

原因:这两个问题是因为mysql设置的权限问题。Mysql考虑到安全性,默认设置的权限是拒绝访问的,需要用户自己开放权限

按下面步骤操作可解决上述两个问题:

一、使用的端口是否正确

由于用的是mysql,监听的是 3306 端口

[root@localhost ~]# netstat -ntpl

 

有3306对应mysql表明该端口正确。

二、防火墙没有开放对应端口

2.1 查看是否有开放对应端口

[root@localhost ~]# firewall-cmd --list-ports

 

出现3306/tcp表明防火墙已经开放对应端口

2.2、若未开放如下图状态,则开放对应端口

# 开放对应端口
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent # zone 作用域 # 3306/tcp 要开放端口 # permanent 永久开放 若没有这个参数,则防火墙重启后失效 success #启动成功
# 重新加载生效 [root@localhost ~]# firewall-cmd --reload
success  #启动成功

 

2.3 检查是否成功开放

[root@localhost ~]# firewall-cmd --list-ports

 

可以看到 3306端口 已经成功开放

三、查看mysql有没有授予当前 IP 远程访问权限

 

[root@localhost ~]# mysql -u root -p
Enter password:
mysql>

# 1.先进入mysql数据库

use mysql;

 # 2.在user表中创建账号

create user 'rootR'@'%' identified by 'pwd';


mysql的HOST分为两种:
1. ‘%’ : 代表匹配任意ip可以连接
2. ‘localhost’ : 代表只可以本机连接
# 3.修改密码(可忽略)
ALTER USER 'rootR'@'%' IDENTIFIED WITH mysql_native_password BY 'rootR.123';
# 4.给创建好的账号赋予远程权限
grant all privileges on *.* to 'rootR'@'%' with grant option;

 # 5.刷新数据库

FLUSH PRIVILEGES;
# 6.查看数据库中的用户权限表
select User,authentication_string,Host from user;

四、使用navcat进行尝试连接

连接名可任意命名、主机填写虚拟机的ip地址(可在虚拟机使用ifconfig进行查看)、端口一般为默认、用户名选择root、输入账户的密码即可,确定之前最好可以进行连接测试。

 

  开启navicat,新建bkrq数据库

  

 如图,已经创建数据库成功了

 如果还是不行,就先exit退出mysqlnavicat中删除连接,再新建一个新的连接,在新连接下创建数据库,因为我就是这样搞的,我之前给root授权后,又刷新一遍了,还是没成功,就重新创建连接再新建数据库,我估计是没刷新完全。 

五、导入SQL数据

1、右击数据库,点击 ‘运行sql文件’ 

2、将bkrq初始化结构.sql 脚本导入等待导入完成

如果重启服务后连接失败请查看处理方案:

https://www.cnblogs.com/liunaixu/p/17122132.html

posted @ 2023-02-17 14:53  思江  阅读(170)  评论(0编辑  收藏  举报