【MySQL】使用 Navicat 远程访问数据库,提示 10060 Unknown Error


在本地虚拟机搭建了 mysql 后,尝试用 Navicat 远程连接数据库。但提示:

  

 

 

查了资料,可能有以下三个原因:

使用的端口是否正确
防火墙没有开放对应端口
数据库没有给当前 IP 远程访问权限
 

一、使用的端口是否正确
由于用的是mysql,监听的是 3306 端口

netstat -ntpl
  

 

 

 

二、防火墙没有开放对应端口
2.1 查看是否有开放对应端口

firewall-cmd --list-ports
1.2 若未开放,则开放对应端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent
# zone 作用域
# 3306/tcp 要开放端口
# permanent 永久开放 若没有这个参数,则防火墙重启后失效

# 重新加载生效
firewall-cmd --reload
1.3 检查是否成功开放

  

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

 

三、没有授予当前 IP 远程访问权限
# 1.先进入mysql数据库
use mysql;

# 2.在user表中创建账号
create user 'root'@'%' identified by 'pwd';

# 3.修改密码(可忽略)

//ALTER USER 'root'@'10.150.32.100' IDENTIFIED WITH mysql_native_password BY 'root.123';

# 4.给创建好的账号赋予远程权限

grant all privileges on *.* to 'root'@'10.150.32.100' with grant option;

# 5.刷新数据库

FLUSH PRIVILEGES;

# 6.查看数据库中的用户权限表

select User,authentication_string,Host from user;
 

原文链接:https://blog.csdn.net/qq_34416331/article/details/104198260


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM