You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL Workbench远程连接Raspbian Stretch MariaDB失败求助

解决树莓派MariaDB通过MySQL Workbench TCP/SSH远程连接失败的问题

我之前也碰到过几乎一模一样的问题,折腾了好一阵才搞定,给你几个额外的排查点和解决方案试试:

1. 精准配置MariaDB远程访问权限

虽然你提到root用户已具备权限,但很可能是权限的范围设置不对。先登录树莓派本地的MariaDB:

mysql -u root -p

输入密码后执行以下SQL语句,确保root允许从任意远程IP访问(如果要限制特定IP,把%换成对应IP段即可):

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的数据库密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;

执行完退出MariaDB控制台。

2. 检查MariaDB配置文件的隐藏限制

Raspbian Stretch的MariaDB配置确实有点分散,除了修改bind-address,还要注意这些细节:

  • 找到主配置文件/etc/mysql/mariadb.conf.d/50-server.cnf,定位到[mysqld]段落
    • 将bind-address改为0.0.0.0(允许绑定所有IP)
    • 如果看到skip-networking选项,一定要把它注释掉(加#前缀)
  • 改完配置后重启MariaDB服务:
sudo systemctl restart mariadb

3. 排查树莓派防火墙拦截

Raspbian Stretch默认可能启用了ufw防火墙,直接挡住了3306端口的访问:

  • 先查看防火墙状态:
sudo ufw status
  • 如果看不到3306/tcp的允许规则,添加并重载:
sudo ufw allow 3306/tcp
sudo ufw reload
  • 也可以临时关闭防火墙做测试,确认是不是防火墙的问题:
sudo ufw disable

测试完成后记得重新开启防火墙。

4. 核对MySQL Workbench的SSH连接参数

很多时候问题出在Workbench的配置细节上,再仔细检查一遍:

  • SSH主机地址:填树莓派的真实IP(局域网用内网IP,外网用公网IP)
  • SSH用户名:填树莓派的系统用户(比如默认的pi),密码或密钥要确保正确
  • TCP/IP over SSH的主机地址:必须填127.0.0.1(因为是通过SSH隧道访问树莓派本地的MariaDB)
  • 端口保持默认的3306,数据库用户名填root,密码对应你设置的数据库密码

5. 测试基础网络连通性

先排除网络层面的问题:

  • 在本地电脑ping树莓派IP,确认网络连通:
ping 你的树莓派IP
  • 用telnet测试3306端口是否能正常访问:
telnet 你的树莓派IP 3306

如果telnet连不上,那大概率是防火墙或MariaDB绑定地址的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:18:14