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

如何使用Navicat连接AWS EC2实例中部署的MySQL数据库

解决方案

1. MySQL用户权限校验

  • 登录EC2本地进入MySQL,执行SELECT user, host FROM mysql.user WHERE user = '你使用的MySQL用户名';,确认该用户允许的登录主机不是仅localhost/127.0.0.1,需要配置为你本地设备的公网IP,测试阶段也可以临时设为%(允许所有IP登录,生产环境禁止使用)
  • 权限不符合时执行以下命令修改,修改后执行FLUSH PRIVILEGES;生效:
GRANT ALL PRIVILEGES ON *.* TO '你的MySQL用户名'@'你本地的公网IP' IDENTIFIED BY '你的MySQL密码';

2. MySQL绑定地址校验

  • 打开MySQL配置文件,常见路径为/etc/mysql/my.cnf、/etc/mysql/mysql.conf.d/mysqld.cnf,找到bind-address配置项
  • 确认该配置不是127.0.0.1,可修改为0.0.0.0或者EC2实例的私有IP,修改后重启MySQL服务生效:
    • Debian/Ubuntu系统执行:sudo systemctl restart mysql
    • CentOS/RHEL系统执行:sudo systemctl restart mysqld

3. AWS EC2安全组校验

  • 进入AWS控制台对应EC2实例的安全组配置页面,检查入站规则
  • 确认已放行3306端口,源地址为你本地设备的公网IP,不要配置为0.0.0.0/0避免未授权访问风险

4. EC2本地防火墙校验

  • 登录EC2实例执行sudo iptables -L -n检查iptables规则,确认3306端口未被拦截
  • 若开启了ufw防火墙(Debian/Ubuntu默认),执行sudo ufw status查看端口放行状态,未放行时执行:sudo ufw allow from 你本地的公网IP to any port 3306

5. 连通性测试

  • 本地设备执行nc -zv EC2公网IP 3306或者telnet EC2公网IP 3306测试端口连通性,若连通失败优先排查安全组、防火墙配置

参考截图

报错信息
配置界面截图


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 15:27:04