zoukankan      html  css  js  c++  java
  • MySQL错误:Can't connect to MySQL server (10060) 解决方案

    远程连接mysql数据库的时候显示Can't connect to MySQL server (10060) 如下图所示

     可以从以下几个方面入手,找出错误的原因:

    1.网络问题

      网络不通时会导致这个问题 检查下是不是能ping通

      

    2.mysql账户设置

      mysql账户是否不允许远程连接

      

    --  mysql -u root -p
    
    --  show databases;
    
    --  use mysql;
     
    --  select host,user from user

     可以看到mysql已经设置允许远程连接

     若root用户显示host为localhost 则需要授权 root 用户的所有权限并设置远程访问

      

    -- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;     //任何远程主机都可以访问数据库  
     
    -- FLUSH PRIVILEGES;    //需要输入次命令使修改生效  
     
    -- EXIT    //退出 

    也可以通过修改表来实现远程:

    -- use mysql;  
     
    -- update user set host = '%' where user = 'root';  
     
    -- select host, user from user; 

    3.防火墙端口未开放

    root@iZ2zee2l6djknfZ ~]# firewall-cmd --list-ports
    20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 8001/tcp 8001/udp
    [root@iZ2zee2l6djknfZ ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
    success
    [root@iZ2zee2l6djknfZ ~]# firewall-cmd --reload
    success
    [root@iZ2zee2l6djknfZ ~]# firewall-cmd --list-port
    20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 8001/tcp 8001/udp 3306/tcp

    可以看出mysql3306端口没有开放 此处开放 然后刷新就可以了

    其他防火墙命令

    #centos7查看防火墙所有信息
    firewall-cmd --list-all
    
    #centos7查看防火墙开放的端口信息
    firewall-cmd --list-ports
    
    #新增一个开放端口
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    #说明:
    #–zone #作用域
    #–add-port=80/tcp #添加端口,格式为:端口/通讯协议
    #–permanent 永久生效,没有此参数重启后失效
     
    #新增多个端口:
    firewall-cmd --zone=public --add-port=80-90/tcp --permanent
    
    #删除
    firewall-cmd --zone=public --remove-port=80/tcp --permanent 

    #重新加载
    firewall-cmd --reload #查看本机已经启用的监听端口centos7以下使用netstat
    -ant,7使用ss ss -ant #centos7启动防火墙 systemctl start firewalld.service #centos7停止防火墙/关闭防火墙 systemctl stop firewalld.service #centos7重启防火墙 systemctl restart firewalld.service #设置开机启用防火墙 systemctl enable firewalld.service #设置开机不启动防火墙 systemctl disable firewalld.service

    4.查看云服务器商是否配置安全组规则 

    其实出现这个错误的原因也不外乎以上几个方面,相信按照上面的思路找出原因,定能将问题解决掉

  • 相关阅读:
    vi删除前n个字符
    ubuntu自定义登录session和桌面环境
    linux出错处理
    获取用户id
    c关键字控制语句运算符小结
    红帽Linux启动流程详解
    C语言中的文本流与二进制流的区别
    c简单排序字符串
    linux挂载磁盘优盘
    strcpy之段错误
  • 原文地址:https://www.cnblogs.com/zhangxiaoxia/p/13043508.html
Copyright © 2011-2022 走看看