Navicat 连接 MySQL 保姆级超详细教程

张开发
2026/4/16 8:39:17 15 分钟阅读

分享文章

Navicat 连接 MySQL 保姆级超详细教程
前言Navicat 是目前 Windows、macOS、Linux 平台上最主流、最易用的 MySQL 图形化管理工具无论是本地开发、测试环境还是服务器上的生产环境几乎所有后端开发者、DBA 都会用到。但很多新手在第一次使用时经常遇到连接失败、报错 2003/1045/2059、远程连不上、中文乱码、权限不足等问题反复排查却找不到原因。本文从零起步完整讲解 Navicat 连接 MySQL 的全流程包含本地连接、远程连接、SSH 隧道连接、阿里云 / 腾讯云服务器连接、Docker 内 MySQL 连接并总结12 个高频避坑点每个坑都附带原因 解决方案全程一步一截图式描述真正做到看完就能用。全文约 5500 字适合零基础、学生、刚入行开发、运维人员阅读。一、前期准备工作1.1 确认已安装 MySQL首先必须保证你的电脑或服务器上已经安装并正常运行 MySQL版本不限5.5 / 5.6 / 5.7 / 8.0 均适用。如果你还没装 MySQLWindows 推荐安装 MySQL 5.7 或 8.0稳定、兼容性强macOS 可通过 Homebrew 安装Linux 直接用 yum /apt 安装安装完成后必须确保MySQL 服务处于运行状态。1.2 确认 MySQL 基础信息连接前必须知道以下 5 个关键信息主机地址本地连接localhost或127.0.0.1远程服务器公网 IP 地址如120.79.xx.xx端口号默认3306若修改过则填实际端口如 3307、3308用户名默认管理员账号root密码安装 MySQL 时自己设置的密码数据库字符集统一使用utf8mb4支持 emoji、最全中文1.3 安装 NavicatNavicat 支持多数据库类型MySQL、PostgreSQL、SQL Server、Oracle 等我们只需要用Navicat for MySQL或Navicat Premium。安装步骤下载对应系统版本一路下一步默认安装路径即可打开后选择试用即可进入主界面二、本地 MySQL 连接最基础、最常用本地连接指 Navicat 和 MySQL 安装在同一台电脑上是开发最常用场景。2.1 新建 MySQL 连接打开 Navicat左上角点击连接 → MySQL弹出连接设置窗口2.2 填写连接参数常规选项卡连接名自定义方便自己识别如本地MySQL-5.7、本机MySQL8主机localhost或127.0.0.1端口3306用户名root密码你的 MySQL 密码建议勾选保存密码避免每次输入高级选项卡解决乱码必设置编码选择utf8mb4其他默认即可SSL 选项卡本地连接一般不使用 SSL保持关闭2.3 测试连接点击左下角测试连接若弹出连接成功说明配置正确点击确定保存连接2.4 打开连接左侧列表会出现你刚创建的连接双击连接名即可激活使用。激活后可以看到系统数据库mysql、information_schema、performance_schema 等可新建数据库、新建表、执行 SQL、导入导出数据等三、远程连接 MySQL 完整开通流程重点远程连接指你的电脑本地 Navicat连接 → 服务器上的 MySQL阿里云、腾讯云、华为云、公司内网服务器远程连接默认是关闭的必须手动开通否则永远连不上。3.1 开通远程连接四步走第一步修改 MySQL 配置文件允许外部访问MySQL 默认只允许本机127.0.0.1访问需要修改绑定地址。Windows找到my.ini通常路径plaintextC:\ProgramData\MySQL\MySQL Server 8.0\my.ini找到plaintextbind-address 127.0.0.1改为plaintextbind-address 0.0.0.0LinuxCentOS / Ubuntu配置文件一般为/etc/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf同样修改plaintextbind-address 0.0.0.0修改完成后重启 MySQL 服务。第二步给 root 账号授权远程访问登录服务器 MySQL 执行以下 SQLsql-- 创建允许任意IP访问的账号 CREATE USER root% IDENTIFIED BY 你的密码; -- 授权所有权限 GRANT ALL PRIVILEGES ON *.* TO root% WITH GRANT OPTION; -- 刷新权限 FLUSH PRIVILEGES;解释%代表允许所有 IP 地址连接生产环境不建议给 root 开全网权限可指定固定 IP第三步开放服务器防火墙 3306 端口Linux 防火墙bash运行# CentOS 7 firewall-cmd --zonepublic --add-port3306/tcp --permanent firewall-cmd --reload # Ubuntu ufw allow 3306 ufw reload云服务器阿里云 / 腾讯云必须在控制台安全组里开放 3306 端口否则防火墙放开也没用。入方向允许 TCP 3306来源0.0.0.0/0或你的本地公网 IP第四步Navicat 配置远程连接新建连接主机填写服务器公网 IP端口3306用户名root密码服务器 MySQL 密码测试连接 → 成功3.2 SSH 隧道连接更安全生产推荐很多公司不允许直接开放 3306 端口这时用SSH 隧道中转连接。配置方法常规页主机localhost端口3306MySQL 账号密码SSH 页使用 SSH 隧道勾选主机名 / IP服务器公网 IP端口22用户名服务器登录账号如 root验证方式密码 / 密钥文件测试连接即可成功优点不用暴露 3306 端口更安全适合内网、生产环境四、Docker 内 MySQL 连接方法很多人用 Docker 跑 MySQL也经常连不上正确步骤运行容器时必须映射端口bash运行docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD123456 mysql:8.0Navicat 连接主机localhost端口3306账号密码正常填写若仍连不上检查端口映射是否正确进入容器授权远程访问五、Navicat 连接 MySQL 12 个必看避坑99% 人都踩过坑 1报错 2003 – Can’t connect to MySQL server原因MySQL 服务没启动端口错误防火墙拦截云服务器安全组没开 3306解决启动 MySQL 服务核对端口关闭防火墙或放行 3306云控制台安全组开放端口坑 2报错 1045 – Access denied 拒绝访问原因账号或密码错误没授权远程访问解决确认密码正确执行授权 SQLsqlALTER USER root% IDENTIFIED BY 新密码; FLUSH PRIVILEGES;坑 3MySQL 8.0 报错 2059 认证失败原因MySQL 8.0 默认使用caching_sha2_password加密Navicat 不兼容。解决sqlALTER USER root% IDENTIFIED WITH mysql_native_password BY 密码; FLUSH PRIVILEGES;坑 4中文乱码、问号原因字符集不统一。解决连接高级设置编码utf8mb4数据库建库时utf8mb4表字符集utf8mb4程序连接串也用 utf8mb4坑 5本地能连远程死活连不上原因bind-address 未改为 0.0.0.0未授权 % 远程账号防火墙 / 安全组拦截服务器运营商封禁 3306解决按本文远程连接四步重新检查。坑 6Navicat 保存密码后仍提示输入原因密码错误勾选保存密码但未生效连接配置被修改解决删除连接重新创建重新测试保存。坑 7只能看到部分数据库看不到系统库原因账号权限不足。解决使用 root 账号或重新授权sqlGRANT ALL ON *.* TO user%;坑 8连接成功但执行 SQL 很慢原因网络延迟高MySQL 配置过低Navicat 刷新频率过高解决用 SSH 隧道关闭 Navicat 自动刷新优化 MySQL 配置坑 9建库时报错 “非法排序规则”原因字符集与排序规则不匹配。解决统一使用字符集utf8mb4排序规则utf8mb4_general_ci坑 10导入 SQL 文件时报错超时原因文件过大、max_allowed_packet 太小。解决修改 my.ini/my.cnfplaintextmax_allowed_packet 1024M重启 MySQL。坑 11远程连接一段时间自动断开原因MySQL wait_timeout 超时断开。解决在 Navicat 连接属性 → 高级 → 勾选保持连接间隔。坑 12Docker MySQL 端口映射了还是连不上原因端口冲突容器内 MySQL 未授权容器未正常运行解决bash运行docker exec -it mysql mysql -uroot -p进入后执行授权语句。六、连接成功后基础常用操作新手必学6.1 新建数据库右键连接 → 新建数据库数据库名英文不要中文字符集utf8mb4排序规则utf8mb4_general_ci6.2 新建表双击进入数据库 → 右键表 → 新建表设置字段名、类型、长度、主键、自增、非空等。6.3 执行 SQL 查询点击查询 → 新建查询输入 SQLsqlSELECT * FROM user;点击运行。6.4 数据备份与恢复右键数据库 → 转储 SQL 文件 → 备份右键数据库 → 运行 SQL 文件 → 恢复6.5 用户与权限管理可在 Navicat 图形界面直接创建用户、分配库表权限无需手写 SQL。七、生产环境安全建议非常重要不要用 root 账号远程全网开放新建业务专用账号只授予对应库权限不要用 3306 默认端口改为 3307、3308 等限制来源 IP不要用 %改为公司出口公网 IP优先使用 SSH 隧道连接定期修改密码关闭不必要的外部访问权限开启 MySQL 日志便于排查入侵八、总结Navicat 连接 MySQL 看似简单实际涉及服务状态、端口、防火墙、安全组、授权、加密规则、字符集等多个环节任何一步错都会连接失败。本文完整覆盖本地连接公网远程连接SSH 隧道连接Docker MySQL 连接12 个高频避坑生产安全规范基础操作教程只要严格按照步骤操作99% 的连接问题都能一次性解决。如果你遇到特殊报错可以直接根据错误码对照本文避坑部分基本都能找到解决方案。

更多文章