Navicat连接MySQL详细教程
时间:2026-05-09 14:02:45 353浏览 收藏
本文全面解析了Navicat连接MySQL的五种主流场景及实操方案——从本地直连、远程IP访问,到高安全性的SSH隧道、Docker容器化部署,再到云数据库(如阿里云RDS)的SSL加密连接,不仅指出常见失败原因(如主机地址误填、权限未授权、防火墙拦截、端口映射错误或SSL配置缺失),更提供每种方式下精准的配置步骤、关键命令和避坑提示,助你快速定位问题、一次配通,无论你是开发新手还是运维老手,都能找到适配自身环境的可靠连接路径。

如果您尝试使用Navicat连接MySQL数据库但无法建立通信,则可能是由于主机地址、端口、用户名或权限配置不匹配。以下是多种可行的连接配置方法:
一、本地直连(localhost/127.0.0.1)
该方式适用于Navicat与MySQL安装在同一台设备上,依赖TCP协议通信,避免因socket路径或命名管道导致的隐性失败。
1、启动Navicat,点击左上角“连接”→选择“MySQL”。
2、在“常规”选项卡中填写:连接名(如:本地MySQL-8.0)、主机:127.0.0.1(不建议填localhost)、端口:3306(若修改过请填实际端口)、用户名:root(或已授权用户)、密码:对应账户密码。
3、切换至“高级”选项卡,将Initial charset设置为utf8mb4,确保中文字符正确解析。
4、点击“测试连接”,弹出“连接成功”提示后,点击“确定”保存。
二、远程IP直连(公网/内网IP)
该方式要求MySQL服务监听非本地地址,并开放对应用户远程访问权限及系统防火墙端口。
1、确认MySQL服务已绑定到非127.0.0.1地址:编辑/etc/my.cnf(Linux/macOS)或my.ini(Windows),将bind-address = 0.0.0.0(或注释该行)。
2、登录MySQL命令行,执行授权语句:GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
3、刷新权限:FLUSH PRIVILEGES;
4、在Navicat新建连接,“常规”页填写:主机:服务器公网或局域网IP(如192.168.1.100)、端口、用户名、密码。
5、检查服务器防火墙是否放行3306端口(Linux执行systemctl stop firewalld临时关闭,或添加规则)。
三、SSH隧道连接(高安全性场景)
该方式通过加密通道转发本地请求至远程MySQL,适用于云服务器未开放3306端口或需规避公网暴露风险的情形。
1、在Navicat新建MySQL连接,在“常规”页仅填写本地可识别的连接名、主机:127.0.0.1、端口3306、用户名与密码(此为MySQL服务端用户)。
2、切换至“SSH”选项卡,勾选“使用SSH通道”,填写:SSH主机名:远程服务器公网IP、端口:22、用户名:服务器系统用户(如ubuntu、root)、密码或密钥文件路径。
3、确保远程MySQL配置中bind-address仍为127.0.0.1(无需对外暴露),且SSH服务正在运行。
4、点击“测试连接”,Navicat将先建立SSH会话,再经隧道转发MySQL请求。
四、Docker容器内MySQL连接
该方式需明确宿主机映射端口与容器内MySQL实际监听端口,避免因端口错位导致连接拒绝。
1、运行docker ps -a查看MySQL容器PORTS列,确认宿主机映射端口(如0.0.0.0:3307->3306/tcp)。
2、Navicat新建连接,“常规”页填写:主机:127.0.0.1、端口:3307(即宿主机映射端口)、用户名、密码。
3、若容器使用自定义网络或bridge模式,确认容器内MySQL未限制host(如只授权'root'@'localhost'),应改为'root'@'%'并执行FLUSH PRIVILEGES。
4、检查Docker容器是否运行:docker exec -it [container_name] mysql -uroot -p验证内部可连。
五、云数据库(阿里云RDS/腾讯云CDB)连接
该方式需启用SSL连接或导入CA证书,因云厂商默认强制加密传输,且root用户不可直接使用。
1、登录云控制台,获取实例连接地址(如xxx.mysql.rds.aliyuncs.com)、端口、白名单IP(需添加当前客户端公网IP)。
2、创建专用数据库账号(非root),并在控制台完成授权。
3、在Navicat“常规”页填写对应域名、端口、新账号及密码;切换至“SSL”选项卡,勾选“使用SSL”,并指定CA证书路径(控制台下载的ca.pem)。
4、若遇TLS版本不兼容(如Navicat 15+与MySQL 8.0.28+握手失败),需在云数据库参数模板中将tls_version设为TLSv1.2并重启生效。
文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《Navicat连接MySQL详细教程》文章吧,也可关注golang学习网公众号了解相关技术文章。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
359 收藏
-
167 收藏
-
382 收藏
-
340 收藏
-
417 收藏
-
172 收藏
-
283 收藏
-
391 收藏
-
104 收藏
-
492 收藏
-
493 收藏
-
259 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习