解决MySQL不能远程访问 使用Navicat报cannot connect(10038)错误

测试远程主机是否能访问服务器

首先看是否可以telnet,本机cmd,telnet 192.168.209.128 3306,结果是连接失败,说明连不通mysql服务器。
在Ubantu查看netstat -anp | grep 3306
发现只能本地连接mysql
这时候我们需要到mysql配置文件中修改
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改mysqld.cnf中的 bind-address = 127.0.0.1bind-address = 0.0.0.0
然后ervice mysql restart即可。

做到这,如果发现本地能telnet通,但是用Navicat还是连不上。
我们需要对登录用户进行授权。

Mysql用户主机授权

1、登陆mysql数据库

mysql -u root -p
查看user表

mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host         | user | password                                  |
+--------------+------+-------------------------------------------+
| localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)

可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,

有时想用本地IP登录,那么可以将以上的Host值改为自己的IP即可。

2、实现远程连接(授权法)

将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。
update user set host = ’%’ where user = ’root’;

将权限改为ALL PRIVILEGES

mysql> use mysql;
Database changed
mysql> grant all privileges  on *.* to root@'%' identified by "password";
Query OK, 0 rows affected (0.00 sec)

mysql> select host,user,password from user;
+--------------+------+-------------------------------------------+
| host         | user | password                                  |
+--------------+------+-------------------------------------------+
| localhost    | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
| %            | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |
+--------------+------+-------------------------------------------+
3 rows in set (0.00 sec)

这样机器就可以以用户名root密码root远程访问该机器上的MySql.

3、实现远程连接(改表法)

use mysql;

update user set host = '%' where user = 'root';

这样在远端就可以通过root用户访问Mysql.

猜你喜欢

转载自blog.csdn.net/deaidai/article/details/80022681