客户端不能连接MySQL - 2003-Can't connect to MySQL server on '192.168.43.180'(10060 "Unknow

Posted 公子缘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了客户端不能连接MySQL - 2003-Can't connect to MySQL server on '192.168.43.180'(10060 "Unknow相关的知识,希望对你有一定的参考价值。

客户端不能连接mysql

  场景:

    数据库(此处以MySQL为例)安装在虚拟机里面,在宿主机上进行连接数据库的时候始终不能连接,但在虚拟机中使用正常。

  

  

  针对上面的场景:

    1. 在虚拟机里面可以正常使用MySQL

    2. 在宿主机上进行连接的时候,始终不能连接

  

  解决方案:

    第一步:检查账号是否支持远程链接?

     相关操作指令:

      # mysql -uroot -p     使用root用户链接mysql    

      # show databases             查看已有的数据框(主要是为了找:mysql 这个数据库)

      # use mysql             使用mysql这个数据库

      # select user,password,host from user;      查询已有的数据库账号

      

      

      注意:

        一定要有那个带有%的一条记录。

        % 表示:允许所有的ip进行连接,如果这里是一个ip地址:192.168.1.100,也就说,允许192.168.1.100这个ip的电脑进行连接。

        如果没有这条记录,需添加(即:创建账号或者进行修改账号的host为%),这里进行添加 :

        # insert into user(user,password,host) values(\'learn\',password(\'learn\'),\'%\')

        # commit;

        #  grant all privileges on learn.* to learn@\'%\';       将learn这个数据库的所有操作权限给learn这个用户

        # flush  privileges;

     

    第二步:检查 防火墙(linux)是否关闭?或者释放了3306(如果防火墙关闭了,就无需释放)

      #  firewall-cmd --state 

      如果是开着的,直接关闭,使用指令,

      # systemctl stop firewalld

    

   以上两步基本上就可以解决问题了。

   上面的指令是针对Linux 7.x版本的。

  防火墙的相关操作,即释放端口操作,可以参考:《Linux 7.x 防火墙&端口》

  

  

以上是关于客户端不能连接MySQL - 2003-Can't connect to MySQL server on '192.168.43.180'(10060 "Unknow的主要内容,如果未能解决你的问题,请参考以下文章

MySQL错误2003:Can't connect to MySQL server (10060)

navicat远程连接mysql,2003 can't connect to mysql server on 10038

远程连接mysql root账号报错:2003-can't connect to MYSQL serve

navicat远程连接mysql,2003 can't connect to mysql server on 10038

navicat远程连接mysql,2003 can't connect to mysql server on 10038

Navicat for Mysql连接mysql数据库时出现 2003-Can't connect to MySql server on 'localhost'(10061)(