You need to enable JavaScript to run this app. 同局域网内无法通过主机IP连接MySQL服务器问题求助
优惠活动
大模型
产品
解决方案
定价
更多

同局域网内无法通过主机IP连接MySQL服务器问题求助

MySQL局域网跨设备无法连接解决方案
  • 检查MySQL服务监听配置
    MySQL默认仅允许本地回环地址访问,需修改配置文件:
    找到MySQL配置文件(Linux系统一般为/etc/mysql/my.cnf、/etc/my.cnf,Windows系统为安装目录下的my.ini),调整如下参数:
    # 注释或者删除以下行,或者将值改为0.0.0.0/服务器局域网IP
    bind-address = 0.0.0.0
    # 如果存在skip-networking参数,必须注释掉
    # skip-networking
    
    修改完成后重启MySQL服务生效:
    Linux执行systemctl restart mysqld或systemctl restart mysql,Windows在服务管理器中重启MySQL服务。
    重启后可在服务器执行命令验证监听状态:
    Linux:netstat -anp | grep 3306
    Windows:netstat -ano | findstr 3306
    确认返回结果中监听地址为0.0.0.0:3306或192.168.0.122:3306而非127.0.0.1:3306。
  • 放行服务器防火墙3306端口
    Linux系统若开启firewalld防火墙,执行以下命令:
    firewall-cmd --add-port=3306/tcp --permanent
    firewall-cmd --reload
    
    若开启ufw防火墙,执行ufw allow 3306/tcp。
    Windows系统需在Windows Defender防火墙的入站规则中,新增规则放行3306端口的TCP连接。
    验证端口连通性:在局域网其他设备上执行telnet 192.168.0.122 3306,能正常进入交互页说明端口已通。
  • 确认数据库账号访问权限
    本地登录MySQL后执行以下命令检查账号权限:
    SELECT user, host FROM mysql.user WHERE user='dbuser';
    
    若返回的host字段值为localhost,说明该账号仅允许本地登录,执行以下命令开放局域网访问权限:
    GRANT ALL PRIVILEGES ON dbname.* TO 'dbuser'@'%' IDENTIFIED BY 'dbpassword';
    FLUSH PRIVILEGES;
    
    %代表允许所有主机访问,如需限制仅局域网访问可替换为192.168.0.%,安全性更高。
  • 访问地址注意事项
    127.0.0.1为本地回环地址,仅指向当前访问设备本身,局域网其他设备访问服务器时必须使用服务器的局域网IP 192.168.0.122,不能使用127.0.0.1

内容的提问来源于stack exchange,提问作者Roberto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 15:36:03