navicat连接虚拟机MySQL 2003问题

今天在ubuntu里面搭建mysql环境并且想远程连接的时候,在物理机上使用navicat连接出现了如下的一个问题。

问题如下:
使用navicat连接虚拟机上的mysql提示错误:Can’t connec to MySQL server on ‘xxxxx’(10060)
在这里插入图片描述

出现这个问题可能因为:

1.MySQL服务未启动
2.MySQL未授权远程连接
3.虚拟机防火墙或者3306端口未启用

所以就一步步看是哪个问题:

第一步,检查虚拟机mysql服务是否启动

输入命令 service mysql status 查看mysql的状态

第二步,检查MySQL是否开启远程权限
1.登陆mysql

mysql -u root -p

2.给MySQL开启允许远程连接的权限,输入以下语句`

mysql> use mysql;
mysql>grant all on *.* to 'root'@'%' identified by '1234';
%表示除localhost以外的所有地址都可以连接访问数据库服务器

3.查看是否授权成功,输入以下语句

mysql>select host, user from user;

在这里插入图片描述

第三步,检查虚拟机防火墙和端口
退出MySQL,输入命令 netstat -ntpl 检查端口信息
在这里插入图片描述
这里如果:3306前面有127.0.0.1,说明3306端口仅对127.0.0.1服务器开放,这里就需要去修改mysql的配置文件了。
输入命令:vim /etc/mysql/mysql.conf.d/mysqld.cnf修改下图里的内容,即注释掉这一行。在这里插入图片描述

输入命令 iptables -vnL|grep 3306 回车,查看防火墙是否设置了3306端口
如果回车后没数据,说明没有3306端口,如果回车后显示3306端口是drop状态,都需要修正,方法如下:
输入命令然后回车

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

再次输入 iptables -vnL|grep 3306 回车即可看到3306端口状态信息:
在这里插入图片描述

再使用navicat连接mysql就没有问题了。
在这里插入图片描述
参考博客链接:https://blog.csdn.net/weixin_49015210/article/details/117748687

  • 3
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值