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

树莓派4上MariaDB无法通过DBeaver连接的排查求助

MariaDB无法通过DBeaver远程连接的排查方向

1. 确认MariaDB服务监听状态

  • 执行 netstat -tulpn | grep mysql 或 ss -tulpn | grep mysql,检查服务是否真的在 0.0.0.0:3306 监听,避免配置修改后未重启服务,或被其他配置文件覆盖。
  • 重启MariaDB确保配置生效:sudo systemctl restart mariadb

2. 检查树莓派防火墙规则

  • Raspbian Buster默认用ufw,执行 sudo ufw status 查看是否开放3306端口入站规则。未开放则添加:sudo ufw allow 3306/tcp,再重启ufw:sudo ufw reload
  • 若使用iptables,执行 sudo iptables -L -n 检查规则,无允许规则则添加:sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT,并保存规则:sudo iptables-save > /etc/iptables/rules.v4

3. 验证DBeaver连接参数

  • 确认主机地址为树莓派局域网IP(如192.168.1.x),而非localhost/127.0.0.1
  • 检查端口号是否为3306,可查看MariaDB配置文件中的port参数确认
  • 核对用户名(admin@%或admin@192.168.1.x)和密码,避免输入错误
  • 暂时关闭DBeaver的SSL连接选项,部分默认SSL配置会导致连接失败

4. 测试局域网端口连通性

  • 在DBeaver所在电脑执行 telnet 192.168.1.x 3306 或 nc -zv 192.168.1.x 3306,判断端口是否能连通:
    • 不通则为网络层面问题(防火墙、路由限制)
    • 能通则回到MariaDB权限或DBeaver配置排查

5. 确认MariaDB权限生效

  • 通过SSH或phpMyAdmin登录MariaDB,执行 SELECT user, host FROM mysql.user;,确认admin对应的host为%或客户端IP,无拼写错误
  • 执行 SHOW GRANTS FOR 'admin'@'%';,确认权限包含ALL PRIVILEGES ON *.*
  • 执行 FLUSH PRIVILEGES; 确保权限修改生效

6. 查看MariaDB错误日志

  • 查找日志路径:sudo grep log_error /etc/mysql/mariadb.conf.d/50-server.cnf
  • 实时查看日志:sudo tail -f /var/log/mysql/error.log,尝试DBeaver连接后,查看是否有具体报错信息(如权限拒绝、连接异常)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 17:48:29