尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Navicat for MySQL下载安装与连接教程:避坑SSL和8.0认证

Navicat for MySQL下载安装与连接教程:避坑SSL和8.0认证 用了十来年数据库工具我自己也换过不少从命令行、Toad、SQLyog到后来固定在Navicat最近Navicat for MySQL又成了很多项目组默认的选择。如果你正打算接一个MySQL本地环境或者是刚入行想找一款图形化数据库工具这篇教程应该能帮你少走不少弯路。它要讲清楚的事情就三件Navicat for MySQL怎么下载、怎么安装、怎么把数据库连上。顺便把新手最容易翻车的几个点——SSL连接报错、socket连接失败、8.0密码认证插件不兼容——一次性讲明白。我这篇以Windows下的完整流程为主线最后补Linux环境和常见报错适合三类读者刚在电脑上装好MySQL、面对黑窗口还有点懵的新人课程设计或JavaWeb项目需要本地连库的学生以及想把手上的数据库管理工作从命令行搬到图形界面的运维或开发。1. 为什么是Navicat从黑窗口到图形界面的关键一步命令行端的MySQL客户端确实强大但大多数人日常用起来并不舒服。你想查一张表的部分数据默认输出是横着排列的字符字段一多整个屏幕就乱套你想改某条记录得先拼一条UPDATE反复确认WHERE条件有没有写错你想把数据库导给别人还得记mysqldump那一长串参数。这些操作不是做不到是效率和出错率的问题。Navicat for MySQL干的事情就是把MySQL的高频操作变成“看得见、点得动”的图形界面。打开软件后左侧是连接列表点开连接能看到数据库、表、视图、存储过程、函数、事件层次一目了然。双击某张表数据直接以表格形态呈现在你面前支持Excel式筛选、排序、直接编辑单元格右键菜单里有复制表、数据传输、数据同步等实用功能。说白了命令行能干的它基本都能干但门槛低了一大截。我甚至不太认同“图形化工具会让人学不会SQL”的说法。Navicat自带查询构建器你拖拖选选它自动生成SELECT语句反复几次以后SELECT、FROM、WHERE、ORDER BY这些关键字该怎么组合你自然就有感觉了。我接触过不少新人SQL基础就是靠这类工具配合官方文档补起来的。1.1 Navicat for MySQL 和 Navicat Premium 怎么选下载之前要分清两个产品名这是新手最容易懵的地方。Navicat for MySQL是专门为MySQL和MariaDB设计的单数据库版本界面聚焦安装包相对小功能也围绕MySQL展开。如果你确定只需要连MySQL选它就够了。Navicat Premium则是覆盖多种数据库的全家桶版本除了MySQL还能连Oracle、PostgreSQL、SQL Server、SQLite甚至MongoDB。它适合需要同时管理多种数据库的同学切换连接时不用在不同软件之间来回蹦。我的建议很简单学MySQL、做Web开发、写Python后端一律先从Navicat for MySQL入手。操作逻辑更简单不会在新建连接时被一堆数据库类型晃花眼资源占用也少。等哪天真的要管多种数据库了再切Premium学习成本几乎为零。1.2 免费版、试用版和商业授权先把边界搞清楚关于Navicat的获取方式网上消息特别乱我先把结论摆在这Navicat是商业软件官方提供有限功能的免费版Free版本和全功能限时试用一般是14天。免费版能用但部分高级能力会被锁住比如数据同步、备份计划、模型设计这些模块可能不可用。想稳定长期使用完整功能最体面的方式就是从官网购买许可证然后在软件里正常激活。搜索引擎第一页经常会出现带“破解版”“注册码”“永久密钥”这类字眼的下载链接我的态度很明确别碰。这类修改过的安装包安全风险极大捆绑未知程序是家常便饭你今天装了一个数据库工具明天电脑上可能就多了一堆弹窗和后台驻留进程。更要命的是数据库工具要连的是真实数据账号密码一旦被工具的附加代码截走问题就严重了。如果你暂时没有预算把官方免费版或试用版用明白就行学习、练手、本地项目完全够撑住。把“免费”的边界搞清楚比到处找不靠谱的激活码划算多了。2. 下载这一步最容易翻车官网识别和版本差异2.1 认准官方网站避免下到“下载器”Navicat的官方网站是navicat.com进去以后左上角有产品菜单里面有Downloads下载中心。这里必须提醒你现在搜索引擎前几排经常出现带“官方下载”字样的第三方站点域名看起来像那么回事页面排版也模仿官网但实际是个下载站或采集站。判断标准有三个一是看域名认准navicat.com下的链接二是看下载方式官网通常直接给安装包或者引导到自家下载服务器绝对不会先让你装一个“下载器”再给你软件三是看安装包大小Navicat的安装包一般几十MB到一百多MB如果下载下来只有几MB那八成是下载器的马甲别双击。官网首页右上角能切换简体中文下载页面里按Windows、macOS、Linux分好类注意选对应系统版本别看到第一个就狂点。2.2 16和17两个大版本到底装哪个Navicat for MySQL目前市面上流通比较广的是16和17两个大版本。16是老练的稳定版网上的教程、课程截图大量基于16很多公司内部也还在用它。17是最新的大版本界面和交互做了重新设计左侧工具栏收纳逻辑有些调整但对MySQL 8.0新认证方式的支持更到位。我的建议是纯新手装新不装旧直接上17因为它对当前主流MySQL版本兼容更好如果你要跟着大量教程做对照操作或者项目团队其他人都停留在16那装16反而省心减少“界面不一样找不到按钮”的麻烦。核心连接逻辑两者没有差别后面讲的所有步骤在两个版本上都能走通。2.3 安装包格式exe还是zipWindows安装包一般有两种格式。exe是标准安装程序会写入注册表、创建开始菜单和桌面快捷方式适合大多数人。zip是便携压缩包解压就能跑不装注册表适合公司电脑权限受限、不想留系统垃圾的场景甚至可以直接放U盘里带着走。自己用的机器建议选exe省心。选zip时要注意解压路径别带中文和空格有些扩展工具对路径比较敏感。安装包位数方面现在基本是64位系统选错位数会直接报兼容性问题。3. Windows下完整安装流程从双击安装包到打开连接窗口3.1 下载和下载后的安全检查去官网下载页面对应系统入口点下载等进度条走完。下载完成后先别急着双击看一眼文件大小是否正常再右键→属性→数字签名能看到官方签名信息就基本稳妥。这一步能过滤掉大部分高仿站的坑。如果你下载时发现浏览器拦截了下载或者安全软件报警先停下来核对下载地址不要硬着头皮继续。安全工具的拦截很多时候是因为文件确实有问题而不是误报。3.2 安装向导里的三个关键点双击安装包后Windows会跳一个用户账户控制提示确认来源没问题就点“是”。进入安装向导后有三步需要留意许可协议页同意没有悬念安装路径默认在C盘Program Files下C盘紧张就改到D盘路径里尽量不要出现中文避免个别功能组件读取异常组件选择保持默认后续用不到的功能也不会碍事。然后就是一路“下一步”和“安装”整个过程视机器性能大概一两分钟。安装过程中杀毒软件可能弹提示因为程序要写注册表、创建服务项确认文件来源是官网正版后放行即可。3.3 首次启动先看到的是空的连接管理界面安装完成后桌面会有Navicat图标双击打开首次启动会提示选择试用或注册。不打算马上购买就走试用流程操作上没有任何障碍也不会强制绑卡绑手机号。进入主界面后中间区域是连接管理区左边连接列表是空的这是正常的——Navicat不会自动发现你电脑上的MySQL你得手工创建一条连接。很多新手卡在这一步“我明明装好了Navicat怎么看不到数据库”因为还缺一条连接。别慌连接步骤在第5章先把第4章的MySQL环境准备好再回来填连接参数。3.4 顺手配置mysql命令行工具路径Navicat有个容易被人忽略但很实用的配置工具→选项→文件→MySQL命令行工具路径。把MySQL安装目录下的mysql.exe完整路径填进去以后在Navicat里点终端按钮就能直接弹出mysql命令行的交互窗口自动以当前连接的身份登录。适合偶尔要执行复杂SQL又想带图形界面上下文的人。不配置不影响正常功能只是终端按钮用不了。4. Navicat连不上的根子往往在MySQL环境而不是Navicat4.1 Windows下装MySQL 8.0推荐动手配置ZIP版不少朋友的“Navicat装好了一连接就报错”问题根本不是Navicat而是电脑上压根没有可用的MySQL服务。图形客户端只是一个遥控器数据库服务本身才是那头大象。Windows装MySQL 8.0有两种常见方式。一种是官方MSI安装包全图形引导勾选组件和服务简单但对后续定位问题帮助有限另一种是下载ZIP Archive压缩包手动配置我更喜欢这台因为你能清楚知道每个部件在哪。步骤简述去dev.mysql.com/downloads/mysql/下载ZIP版解压到D:\mysql-8.0.x把bin目录加到系统环境变量PATH在MySQL根目录新建my.ini用管理员身份打开CMD执行mysqld --initialize-insecure初始化数据目录然后mysqld --install把MySQL注册成Windows服务最后net start mysql启动服务。4.2 一份够用的my.ini最小配置手动配置时my.ini是核心。给一份我常用的本地开发模板[mysqld] basedirD:/mysql-8.0.x datadirD:/mysql-8.0.x/data port3306 character-set-serverutf8mb4 default-authentication-pluginmysql_native_password [client] port3306 default-character-setutf8mb4三点说明。第一basedir和datadir路径用正斜杠最省心datadir对应的目录在初始化前可以不存在mysqld会自动创建。第二default-authentication-plugin写成mysql_native_password是为兼容老版客户端工具的临时手段后面第5章会细讲这个坑。第三字符集一定要utf8mb4现在项目基本都要存emoji和非常规字符这是事实标准别再用老掉牙的utf8了。配置保存后执行mysqld --initialize-insecure。注意这个参数会生成一个空密码的root账号只适合本地开发练习。生产环境请改用mysqld --initialize它会生成临时密码并写进日志安全性完全不同。4.3 Linux下安装MySQL的快速对照如果数据库在Linux机器上安装逻辑差不多就是包管理器不同。Debian系如Ubuntu直接apt install mysql-serverRedHat系如CentOS、Rocky可以yum install mysql-server或者从MySQL官方仓库拉rpm包。离线内网环境装MySQL把官方rpm包和依赖一起拷进去用rpm -ivh mysql-community-*.rpm逐个装顺序大体是common→libs→client→server。装完systemctl start mysqld启动服务然后去/var/log/mysqld.log找临时root密码grep temporary password /var/log/mysqld.log拿到临时密码登录后第一件事就是ALTER USER修改密码否则什么都干不了。4.4 连接前先自检端口和服务装完MySQL不管什么系统都要确认服务在听。Windows下以管理员身份运行netstat -ano | findstr 3306看到LISTENING状态就对了。Linux下用ss -lntp | grep 3306或者systemctl status mysqld。这一步做踏实再来操作Navicat报错原因才能锁定在客户端配置而不是服务端没启动。再有就是3306端口可能被占用。如果MySQL启动失败先排查是不是端口被别的老MySQL或同类服务抢了。把其中一个停掉或者把新MySQL的端口改掉一劳永逸。5. 第一次连接MySQL填表、报错、绕坑5.1 新建连接的字段含义打开Navicat点左上角“连接”选MySQL弹出连接配置窗口。字段不多但每个都要理解对连接名随便起比如“本地练习”只影响列表里显示的名字主机填127.0.0.1或localhost远程机器填IP或域名端口默认3306如果MySQL改过端口这里必须同步改用户名root或实际存在的MySQL用户密码对应密码勾选保存密码后下次打开直接连。这里有两个提醒。第一连接名和数据库名是两回事一条连接下面挂多个数据库非常正常别以为一个连接只能对应一个库。第二主机一栏填localhost还是127.0.0.1Windows下大多数都能通但如果碰到奇怪的连接失败改成127.0.0.1往往能绕过hostname解析问题。填完先点“测试连接”提示连接成功再点确定保存。5.2 error 2002socket路径对不上在Linux服务器上装了MySQL又用本机Navicat连本机服务时很容易报这个经典错误ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock这个报错的意思是客户端尝试通过UNIX socket文件连MySQL但指定路径上没找到这个socket文件。常见原因两个一是MySQL服务没启动socket文件自然不存在启动服务就好二是MySQL实例配置的socket路径和客户端默认找的/tmp/mysql.sock不一致比如有些版本会把socket放在/var/lib/mysql/mysql.sock。解决办法很简单让Navicat走TCP/IP别走socket。主机一栏填127.0.0.1端口填3306TCP连接不需要socket文件绕开整个报错。如果你非要走socket做本地高性能连接那就得确认socket实际路径再让客户端指向对应位置。但对绝大多数人来说TCP方式又省事又可靠。5.3 SSL连接错误本地测试环境直接关掉SSLMySQL 8.0默认开启SSL连接但本地开发环境往往没有配置妥帖的证书Navicat测连时会报类似SSL connection error: SSL_CTX_set_min_proto_version或者TLS版本不匹配之类的提示。这个报错措辞挺吓人实际解法很轻松在连接窗口切到SSL选项卡把“使用SSL”勾选去掉再测试连接基本就通了。本地开发环境关闭SSL不影响任何操作数据和表结构都能正常读写。但我要划条线本地测试关SSL可以生产环境千万别省。如果你的库部署在云服务器或公网可达的位置连接必须走加密。正确的做法是在Navicat的SSL选项卡里配置服务端提供的CA证书路径让连接保持SSL状态。这个原则一定要记住。5.4 MySQL 8.0默认认证插件不兼容老版本Navicat的经典坑这是Navicat连MySQL 8.0的典型问题。MySQL 5.7时代默认认证插件是mysql_native_password8.0换成了更安全的caching_sha2_password。如果你Navicat版本偏旧连接时会报Authentication plugin caching_sha2_password cannot be loaded老客户端不认识这种新认证方式。解决办法有两个。一是把Navicat升级到新版新版自带caching_sha2_password支持二是把当前用户认证方式临时切回旧版在MySQL命令行或Navicat查询窗口执行ALTER USER rootlocalhost IDENTIFIED WITH mysql_native_password BY 你的密码;执行成功后再连接就正常了。这里同样要提醒第二种方式只建议在测试环境用mysql_native_password安全强度相对落后生产环境尽量保持默认认证方式并把客户端工具升级到位。还要注意8.0连接报错经常是SSL和认证插件两个坑连着来。先关SSL再切认证插件一层层排除。6. 我把Navicat用顺手的几个习惯6.1 连接命名和组织连接一多满屏IP和账号很容易记混。我习惯按“项目-环境-用途”三层命名比如“电商后台-测试-只读”。连接列表扫一眼哪个是正式环境、哪个是测试机、哪个账号只能读不能改全清清楚楚。Navicat支持给连接设置颜色标签我一般绿色代表测试、红色代表生产——这个习惯关键时刻能救命很大程度上降低了点错库改错数据的概率。6.2 数据同步、表结构和备份很多人问我“把远程库的这张表同步到本地怎么操作”。Navicat里现成功能叫数据同步工具菜单→数据同步选源库、目标库勾选要同步的表它会对比数据并把差异同步过去。结构同步则是只比较表结构、索引、字段定义不管数据内容。这两个功能特别适合定期拉一份线上数据到本地分析完全不用手动导出再导入。备份方面右键数据库名→转储SQL文件能把整个库的结构和数据打包成一份SQL脚本。之后在任何数据库里执行这个脚本就能恢复出一模一样的库。比手动敲mysqldump参数要直观太多尤其适合课程设计交作业的场景。6.3 默认值、排序、存储过程这些高频操作在Navicat里怎么做回到热搜词里反复出现的几个具体操作。比如“MySQL设置默认值为0”在Navicat里右键表→设计表选中目标字段在底部的“默认”栏填0保存即可。设计表界面还能直接写字段注释、设置自增、建索引比SQL语句直观得多很适合用来理解表结构设计。排序也是鼠标点几下的事。打开数据表后在结果集顶部点任意字段列头就可以升序或降序排列等于可视化的ORDER BY。想组合排序就按住Shift点多个列头效果和SQL里的多字段排序一致。存储过程和函数在左侧树里有独立节点双击进入编辑界面点击运行可以调试参数会自动弹出输入窗口。想学MySQL存储过程的同学用Navicat会比命令行友好得多每一步的输入输出都摆在眼前很容易理解变量和流程控制。6.4 从Navicat反向学习SQL最后说点个人经验别把Navicat当成逃避SQL的理由。它的查询窗口支持手写SQL也支持查询构建器。新建查询后在查询菜单里切到创建查询生成器拖字段、选条件SQL会实时拼出来。我建议新手先拿它生成简单查询再对照官方文档看懂每个关键字的意思。我带过几个新人基本都是这条路走过来的先在Navicat里把表结构看懂再用查询生成器写出第一批SELECT然后慢慢手写一些JOIN和子查询来做课程设计。等习惯以后命令行写SQL就不再是障碍工具反而成了你手里的高效武器。我自己在实际操作中最深的体会是工具定位是“降低操作门槛”不是“替代思考”。Navicat把下载、安装、连接、日常维护这些琐事压到了最低但数据库的字段设计、索引规划、数据备份纪律这些功夫还是得靠自己一层层攒。先把这套流程跑通后面很多事就都顺了。
返回列表