• sequel 远程连接 MySQL 连接错误Can't connect to MySQL server on (61)


    Mac sequel Pro链接时报错Can’t connect to MySQL server on ‘xx.xx.xx.xx’ (61)。

    PS. win版Navicat 报错Can’t connect to MySQL server on ‘xx.xx.xx.xx’ (10038)

    其中xx.xx.xx.xx是ip地址。

    1、查看该用户是否有远程登录的权限

    1.  mysql> SELECT * FROM mysql.user;
    2.  +-----------+-----------+
    3.  | User | Host |
    4.  +-----------+-----------+
    5.  | M | % |
    6.  | mysql.sys | localhost |
    7.  | root | localhost |
    8.  | tommy | % |
    9.  | showhilllee | % |
    10.  +-----------+-----------+
    11.  5 rows in set (0.00 sec)

      很显然,M是允许从其它服务器登陆的。

    2、查看 MySQL Server 是不是监听了 3306 端口

      执行命令netstat -tulpen

    1.  netstat -tulpen
    2.  
    3.  Active Internet connections (only servers)
    4.  Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
    5.  tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 0 16801 1507/sshd
    6.  tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 0 17222 1970/master
    7.  tcp6 0 0 :::3306 :::* LISTEN 27 46396 22054/mysqld
    8.  tcp6 0 0 :::22 :::* LISTEN 0 16803 1507/sshd
    9.  tcp6 0 0 ::1:25 :::* LISTEN 0 17223 1970/master
    10.  udp 0 0 0.0.0.0:68 0.0.0.0:* 0 49600 22999/dhclient
    11.  udp 0 0 0.0.0.0:43504 0.0.0.0:* 0 48850 22999/dhclient
    12.  udp6 0 0 :::47875 :::* 0 48851 22999/dhclient

    我在这里也没有问题。

    这里如果没有监听3306端口或者只监听了localhost(0.0.0.0表示监听所有),则在my.cnf添加下面这一行

    bind-address = 0.0.0.0

    3、如果服务器是 CentOS7,将 MySQL 服务加入防火墙

    执行命令

    sudo firewall-cmd --zone=public --permanent --add-service=mysql

    返回success。然后继续执行

    sudo systemctl restart firewalld 

    重启防火墙之后就能正常访问了。

     
  • 相关阅读:
    linux基础命令1
    linux下nginx搭建
    linux 对外开放端口
    linux下mysql 登录修改密码与数据库备份
    linux下mysql部署
    linux下mysql启动 Starting MySQL. ERROR! The server quit without updating PID file(xxx/x.pid)
    aptitude软件状态标志i、v、p
    GNU各软件版本历史站点
    glibc库和glib库
    禁用ipv6的两种方法
  • 原文地址:https://www.cnblogs.com/wupeng88/p/11989598.html
Copyright © 2020-2023  润新知