☰
MySQL连接不上?手把手教你用Navicat图形化工具搞定数据库管理
2026/9/28 13:13:10 网站建设 项目流程

下午第56节课快结束的时候,老师让我们自己动手把MySQL数据库连上图形化工具。命令行里敲了半天,有的同学卡在密码输不对,有的同学盯着黑窗口发呆,等我把Navicat打开、几秒钟连上数据库的时候,旁边同学直接问我“你这工具哪里来的”。这篇东西就是那次课堂实践的完整记录,从MySQL和Navicat的安装选型,到新建连接、常见报错排查,再到连接成功后怎么快速上手建表、导数据、写SQL,一步一步都拍平了讲,适合刚学数据库、正在被命令行折磨的同学参考。

先说一下标题里的小笔误:应该是“Navicat”,不是“Navica”。这个工具几乎是数据库开发者的标配,支持MySQL、MariaDB、PostgreSQL、Oracle等多种数据库,你只需要一个客户端就能管理本机和远程的库表数据。Navicat和MySQL不是一个东西,MySQL是数据库服务端,Navicat是连接和管理它的图形化客户端,就像一个是发动机,一个是仪表盘。这篇文章我按课堂实操的顺序来写,把环境准备、连接参数、故障排查全部拆开讲,最后附上我踩过的几个坑。

1. 为什么绕不开Navicat:图形化客户端在学数据库时的价值

很多数据库教材都让你从命令行开始练,这个思路没错,但实际写作业、做课设的时候,命令行效率确实有点低。你辛苦敲一条SELECT,字段一多就眼花,光标往上翻还容易看错行。Navicat这类图形化客户端把连接的建立、数据库的浏览、SQL的执行和结果的展示都变成了可视化操作,尤其适合课上跟练和课后复习。

1.1 Navicat到底是什么

简单理解,Navicat是一个“数据库管理员的图形界面”。它本身不存数据,数据都放在MySQL服务端,Navicat做的事情是帮你连上服务端,然后把表结构、数据记录、查询结果用窗口和表格的形式展示出来。你在Navicat里写的SQL,本质上还是发给MySQL执行,只是它帮你省掉了黑窗口里的来回输入。

Navicat的好处有几个:

  • 左侧树形结构能直接看到所有数据库、表、字段、索引,不需要记SHOW DATABASES和DESC TABLE这些命令的返回值格式。
  • 查询编辑器有语法高亮和自动补全,写错关键字一眼就能看出来。
  • 导入导出向导做得很好,CSV、Excel、SQL文件都能直接导,不写命令也能完成数据迁移。
  • 自带数据同步和结构同步工具,两个库之间比对差异很方便。

当然这不是说命令行不重要,反过来说,正是因为我先用命令行敲过一遍基础命令,再看Navicat的操作面板,才能更快理解它背后对应的是哪条SQL。我的建议是两手都要抓,学习阶段用命令行理解原理,做实际任务时用Navicat提高效率。

1.2 为什么不是MySQL Workbench

MySQL官方其实也有一个图形化工具,叫MySQL Workbench。不少同学在装MySQL时顺手装了它,但用起来总觉得有点别扭。Workbench功能其实不弱,但界面偏重,启动时间略长,在低配笔记本上尤其明显。Navicat相比它有几个校园场景里的实际优势:

一是连接信息管理更直观。Workbench的Connection配置项藏得有点深,Navicat的主界面直接就是连接列表,双击就进去,右键就能开新查询。

二是日常操作路径短。比如我要修改一条记录,Navicat里可以直接在结果集表格里点某个单元格修改,然后提交变更;Workbench默认不开这个功能,要先写UPDATE语句。对还没把SQL语法背熟的同学来说,前者显然友好得多。

三是跨平台一致性好。Navicat在Windows、macOS、Linux上的操作逻辑基本一样,机房电脑和笔记本切换着用也没啥学习成本。

Workbench也不是一无是处,它是免费的,适合不想装额外软件的用户。但我课堂上实际体验下来,Navicat的反馈速度和操作逻辑更适合新手进入状态。

1.3 把连接和王牌功能拆开看

课堂上老师提到“数据库同步软件”和“数据库同步工具”,Navicat自带的数据同步功能其实就能干这个活。所谓同步,就是把两个数据库之间的表结构、数据差异找出来,然后按你选的方向更新过去。比如我在笔记本上把测试数据改了,需要同步到台式机的开发库,用数据同步向导选好源库和目标库,它会自动比对并生成变更脚本,不用自己一条条写INSERT和ALTER。

不过要提醒一句,同步功能虽然好用,但不要在课堂上拿它玩太花的东西。同库同步方向设反了,目标库数据会被覆盖,我见过有人把测试库的旧数据同步回开发库,白白浪费一下午。用这个功能前一定要先备份,或者选“仅显示差异”模式,看清楚每一条变更再执行。

2. 环境准备与版本选型:MySQL和Navicat的版本搭配

连接之前,先把环境理清楚。很多新手初学MySQL连不上,根源不在Navicat,而是MySQL服务端本身就没装好或者没启动。所以我习惯把环境准备分成两部分:一个是MySQL服务端的安装与状态检查,另一个是Navicat客户端的安装。

2.1 MySQL服务端安装的几个关键点

MySQL分Server和Client两部分,学习时一般装Server就够用了。Windows上装MySQL 8.0的安装包(MySQL Installer)最简单,一路Next,中间会让你设置root密码,这个密码务必记好,后面连接全靠它。端口默认是3306,不用改。macOS上可以用官方dmg安装包,也可以用Homebrew装,命令是brew install mysql,装完启动服务再运行mysql_secure_installation做基础安全配置。

Linux环境是另一套玩法。Debian系直接apt install mysql-server,RHEL系用dnf install mysql-server。装完启动服务并设开机自启,命令如下:

sudo systemctl enable --now mysqld # Debian系可能是 mysql 而不是 mysqld,具体用 systemctl status mysql 确认 systemctl status mysql

检查服务状态这一步很关键。不管什么系统,只要MySQL服务没起来,Navicat怎么填参数都是白搭,报错最常见的就是连不上服务器。

MySQL 8.0和5.7在连接方式上有个重要差异:8.0默认的认证插件是caching_sha2_password,5.7默认是mysql_native_password。老版本的Navicat如果连不上MySQL 8.0,大概率就是这个不兼容导致的。现在新版本的Navicat已经能识别8.0的认证方式,基本不需要额外操作,但如果你用的还是老版本,连不上时就要考虑是不是认证插件的问题。解决办法是登录MySQL后把用户的认证插件改回mysql_native_password:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码'; FLUSH PRIVILEGES;

5.7和8.0的功能区别这里不展开,课堂作业两个版本都能跑通,只是SQL语法上偶尔有差异,比如8.0对窗口函数的支持更完善。如果只是为了上数据库课,装哪个都行,我更推荐8.0,和当前主流生产环境保持一致。

2.2 Navicat版本怎么选

Navicat目前主推的是Premium系列,就是那个可以连接多种数据库的一体化版本。对MySQL课程来说,用Navicat for MySQL也够了,但Premium的好处是以后学PostgreSQL或者其他数据库还能接着用,不用再换软件。注意标题里提到的“Navicat永久许可密钥”和“破解版安装”这类词,千万别碰。学校机房和教学环境完全可以用官方免费试用版,14天试用期足够你度过整个课程周期,到期后如果想继续用,优先考虑官方订阅或者学校是否有正版授权。盗版破解工具经常捆绑不干净的脚本,为了省几十块钱把电脑搞出问题,完全没必要。

如果你实在不想装付费软件,还有个完全免费的替代品叫DBeaver Community,界面风格类似,支持MySQL连接,学习用途完全够用。我用过一段时间,稳定性也不错,就是界面比Navicat朴素一些。课堂演示中老师用的多半是Navicat,你跟着用DBeaver也基本能对齐操作,但对不齐的时候会有点别扭,所以条件允许我还是建议用Navicat。

Navicat几个版本形式如下表:

版本形式适用场景费用情况
Navicat for MySQL只连MySQL/MariaDB,最轻量商业授权,有试用期
Navicat Premium支持MySQL等几乎所有主流数据库商业授权,功能全,价格更高
Navicat 16/17 系列各版本界面差别不大,新版本对MySQL 8支持更好商业授权
DBeaver Community开源免费替代,支持插件扩展免费

安装本身很简单,下载对应操作系统的安装包,下一步下一步,桌面上多了图标就可以用了。macOS首次打开如果提示“已损坏,无法打开”,是因为系统安全策略阻止了未签名应用,去“系统设置—隐私与安全性”里点允许即可。Windows则要注意安装路径不要带中文,否则某些插件可能出问题。

2.3 安装之后的三大纪律

环境装好后,我给自己定了三个检查项,每次连不上先过一遍这三条,能筛掉八成的问题:

  • MySQL服务进程在不在。Windows看任务管理器里有没有mysqld.exe,macOS看系统设置里MySQL服务是不是running,Linux用systemctl status mysql确认。
  • 3306端口有没有监听。Windows用netstat -ano | findstr 3306,macOS和Linux用netstat -an | grep 3306或lsof -i:3306。端口没监听基本就是服务没起来。
  • 防火墙有没有拦。Windows自带防火墙首次运行MySQL时会弹窗,点允许就好;Linux云服务器还要看安全组规则有没有放行3306。远程连接连不上的时候,先用ping测机器通不通,再用telnet测端口通不通。

这三条检查完,再打开Navicat填连接信息,就不会一头雾水了。课堂上很多同学连接失败,其实就是第二条中的端口没监听,或者第一条服务没启动,跟Navicat本身一点关系没有。

3. 一步一步建立MySQL连接:从新建连接到保存配置

环境准备好之后,最核心的操作就是新建连接。Navicat左侧连接管理区域有个“连接”按钮,点开选择MySQL,会弹出一个配置窗口。这里面的每一项都要有讲究,不是随便填填就能连上的。

3.1 连接参数逐个拆解

连接名是自己起的,随便叫什么都行,建议起得有意义,比如“本地MySQL学习库”或“课堂练习-本机”,这样连接多了以后好识别。主机名和IP地址这一栏,本机连接填localhost或127.0.0.1,远程服务器就填服务器的IP地址或域名。端口默认3306,除非安装MySQL时手动改过,否则不用动。

用户名默认填root,也可以填其他有权限的账号。密码就是安装MySQL时设置的root密码。有些版本MySQL安装时没有设密码,直接留空也能连,但这种情况只在本地学习环境出现,生产环境千万别用无密码账号。

填完之后先别急着点“确定”,先点“测试连接”按钮。如果所有参数都对,Navicat会弹出“连接成功”的提示,这时候再点确定保存连接。这个习惯非常重要,很多同学直接把参数填完点确定,结果连接是保存上了,但里面是坏的,双击打开又弹错误,白白多绕一圈。

这里要特别讲一下localhost和127.0.0.1的区别。在MySQL的语境里,localhost通常会尝试通过Unix socket文件连接(Linux/macOS环境),而127.0.0.1走的是TCP/IP网络协议。个别情况下两者行为不一致,比如socket文件路径不对时,localhost连不上,但127.0.0.1能连上。这就是标题下面热词里那个经典报错的来历:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'。这个报错本质上是服务端没启动或者socket路径变了,跟Navicat没多大关系,后面排查章节我再展开。

3.2 高级选项里的两个实用配置

如果同学们在连接时遇到中文乱码问题,多半是字符集没设置对。Navicat的连接配置窗口里有“高级”或“编码”标签页,可以把编码设置为utf8mb4。MySQL的utf8其实不是完整的UTF-8,它最多只能存3个字节的字符,遇到emoji这种4字节字符就会报错或乱码。utf8mb4才是真正的UTF-8,能覆盖所有Unicode字符,现在新项目全部推荐用utf8mb4。

连接超时和自动断开也值得看一眼。学校机房的网络环境有时候不稳定,默认的超时时间可能太短,导致你写SQL写到一半连接断掉。建议把连接超时设置为0(不超时)或者一个比较大的值,比如30秒。还有“保持连接”之类的选项,能勾就勾上,不过这只影响Navicat到服务器的连接,不影响MySQL服务本身。

SSL标签页也常遇到。MySQL 8默认启用SSL,Navicat新版本能自动识别,一般不用手动配置。如果你连接时报SSL相关错误,可以尝试在高级选项里关掉SSL或者勾选“允许获取公钥”,具体做法在第4章的故障排查里细说。

3.3 连接成功之后先看一眼界面

首次连接成功后,Navicat主界面左侧会出现刚命名的连接,展开后能看到information_schema、mysql、performance_schema、sys这些系统数据库,以及你自己创建的业务数据库。这几张系统表先不用深究,information_schema里存的是数据库的元数据,mysql库里面是用户权限信息,平时不要乱改。你的目光重点放在自己的业务库上。

双击业务库展开,能看到表、视图、函数、事件等对象分类。表再展开,能看到字段、索引、外键等详细信息。这个树形结构其实就是SHOW DATABASES、SHOW TABLES、DESC table_name这些命令的可视化版本,多看几次,命令行里的那些命令就自然记住了。

建议连接成功后先做一件事:新建一个测试查询,输入SELECT VERSION();,执行一下,确认服务端版本和客户端版本都正常。然后试试双击某个表名,Navicat会直接弹出前1000条数据,这个操作在课堂练手时特别方便。

4. 连接失败排查实录:三个课堂高频报错和解决办法

连接Windows、macOS、Linux都可能遇到各种报错,我把课堂上出现频率最高的几个整理成了一张速查表,然后挑两个最典型的展开说。

报错信息可能原因排查思路
ERROR 2002 (HY000): Can't connect to local MySQL server through socketMySQL服务未启动检查服务状态,看3306端口是否监听
Can't connect to MySQL server on '127.0.0.1' (10061)服务未启动或端口错误本机用telnet 127.0.0.1 3306测端口
Access denied for user 'root'@'localhost'用户名或密码错误核对密码,确认用户是否存在
Host 'xxx' is not allowed to connect用户权限未授权用GRANT语句给该主机授权
Authentication plugin 'caching_sha2_password' cannot be loaded客户端版本太旧升级Navicat,或改认证插件
Public Key Retrieval is not allowedMySQL 8 SSL公钥获取受限连接参数allowPublicKeyRetrieval=true

4.1 ERROR 2002:socket连接失败的最常见原因

上课时好几个人同时遇到这个问题,命令行和Navicat都是同样的报错。这个报错说的是本地通过socket文件连不上MySQL,所以第一步就是确认MySQL到底跑没跑起来。Windows下直接打开“服务”管理器(Win+R输入services.msc),找到MySQL相关的服务,看状态是不是“正在运行”。如果没跑,右键启动。macOS到“系统设置—MySQL”里看有没有显示running,没有就点Start MySQL Server。Linux执行systemctl status mysql,如果显示inactive就systemctl start mysql。

服务起来之后,再回到Navicat测试连接,大概率就好了。另一种情况是服务起来了但socket路径不对,比如MySQL的socket文件在/var/run/mysqld/mysqld.sock而不是/tmp/mysql.sock,这时候用客户端指定socket路径也能连:

mysql -u root -p --socket=/var/run/mysqld/mysqld.sock

Navicat这边,如果连接配置里填的是localhost而MySQL的socket不在默认位置,可以试一下把主机改成127.0.0.1,强制走TCP/IP,绕开socket文件。这是最省事的一招。

4.2 Access denied和Host not allowed:权限问题的两种解法

Access denied一般就是密码错了。root密码在安装时设置,如果忘了,Windows下可以通过mysqld --skip-grant-tables跳过权限表来重置密码,Linux下把skip-grant-tables加进配置文件,重启服务再改密码。这个方法步骤有点多,课堂上有同学试过一次,折腾了半小时才成功,我建议还是在纸上记好密码更省心。

Host not allowed这个报错在远程连接场景更常见。默认安装的MySQL只允许localhost本机连接,想从别的电脑连就需要给用户授权远程访问权限。在MySQL命令行执行下面的SQL:

CREATE USER 'dev'@'%' IDENTIFIED BY '密码'; GRANT ALL PRIVILEGES ON *.* TO 'dev'@'%'; FLUSH PRIVILEGES;

这里的%表示任意主机,也可以写具体的IP,比如'dev'@'192.168.1.100',安全性更高。授权完成后再用这个dev账号去Navicat里连接,就不会再报Host not allowed了。

顺带说一句,课堂实验用%无所谓,但到真实项目里,数据库服务器往往只开放内网访问,不会把3306直接暴露到公网。如果真需要远程连,建议使用SSH隧道方式,让Navicat先建立SSH连接再到本地端口连接MySQL,这样比直接开3306安全得多。

4.3 SSL和认证插件不兼容

MySQL 8.0的默认认证插件变了之后,Navicat旧版本出现过几次不兼容的情况。一个典型报错是Authentication plugin 'caching_sha2_password' cannot be loaded。遇到这种,最快的方法是升级Navicat到新版本,新版官方已经适配了MySQL 8。如果你的环境确实没法升级,也可以把用户改回旧认证方式,前面第2章写过那条ALTER USER语句,这里不再重复。

还有Public Key Retrieval is not allowed这个错误。这是MySQL 8里SSL握手时客户端要求获取服务器的公钥,但默认配置不允许。Navicat的SSH/SSL标签页里有一个“允许获取公钥”或者allowPublicKeyRetrieval相关选项,勾上即可。命令行连接的话,在命令后面加一个--allow-public-key-retrieval=true参数,也能解决。

这两个问题在课堂上都是个别同学遇到,多半是安装的Navicat版本比较旧。说实话,这不算什么疑难杂症,就是版本之间的适配问题,升级到新版基本就消停了。

5. 连接成功后的上手路线:建库、导数据、写SQL

连接只是第一步,真正让Navicat发挥价值的是连接之后的日常操作。我发现很多同学连接上了就只会双击表看数据,连怎么建新库都不知道。这部分我把课堂练过的核心操作串一遍,照着做一遍就能形成肌肉记忆。

5.1 新建数据库和表的时候,字符集一定要选对

在Navicat左侧连接名上右键,选择“新建数据库”,弹出窗口里数据库名按课程要求填,比如student_db或者demo。重点是字符集和排序规则这两栏。字符集务必选utf8mb4,排序规则对应选utf8mb4_unicode_ci或utf8mb4_general_ci都可以,前者对Unicode的排序规则更标准一些,后者更轻快,差别在日常使用中几乎感觉不到。

建好库后双击打开,在“表”上右键新建表。Navicat的可视化建表界面就是从上往下填字段名、类型、长度、是否允许NULL、是否主键。这里有个新手易错点:id字段通常设为int类型并勾选“自动递增(AUTO_INCREMENT)”,否则你每次插入数据都要手动指定id,极其痛苦。另一个是每个表最好都设一个主键,虽然MySQL不强制,但没有主键的表在后续做数据同步和更新时很容易出问题。

字段类型的选择直接决定数据能存什么。int存整数,varchar存变长字符串,decimal存金额,datetime存时间日期。新手容易把手机号或者学号设置成int类型,结果长度不够或者溢出,其实这类信息应该用varchar,因为不需要参与数学计算,而且可能包含前导零。课堂上有个同学把学号设成int,结果学号开头的0全被吞了,修数据修了一节课。

5.2 导入导出SQL文件和数据迁移

Navicat的数据导入导出对新手来说非常友好。右键目标数据库或表,选择“转储SQL文件”,就能把整个库的结构连同数据导出成一个.sql文件。这个文件本质上就是一堆CREATE TABLE和INSERT语句,用任何文本编辑器都能打开看,是理解SQL语句结构的很好的学习材料。

导入就反着来,右键目标连接,选择“运行SQL文件”,选中之前导出的.sql文件,Navicat会逐条执行里面的语句,把数据和表结构都还原到目标库。这个流程在做作业备份的时候特别有用,比如你在实验室把表建好了,回宿舍还想继续调,就可以在实验室导出一个SQL文件带回来,在宿舍电脑上运行一遍,所有表和数据一模一样。

Navicat还支持把表数据直接导出成Excel或CSV。右键表名,选“导出向导”,格式选Excel,下一步下一步就搞定了。对于课程里要求的“把结果整理成表格”这种作业,这个功能简直救命。

数据同步工具也在这个位置。单独右键一个库,选“数据同步”,选好目标库,Navicat会比对两张表的数据差异,列出需要执行的INSERT、UPDATE、DELETE操作。我前面提醒过的,执行前务必先看预览,确认同步方向没错再点执行。

5.3 SQL编辑器用得顺不顺,直接决定写作业速度

Navicat的查询编辑器是我最常用的功能。点“新建查询”按钮,或者在已连接的库上右键选“新建查询”,就会打开一个SQL编辑器窗口。这里可以写任意SQL语句,按Ctrl+R(macOS是Command+R)执行,运行结果直接在下方表格呈现。关键是它有语法高亮和自动补全,你输入SEL,它会提示SELECT,写多了效率提升非常明显。

课堂作业里最常写的增删改查,用编辑器跑一遍基本就会了:

-- 查询 SELECT * FROM student WHERE age > 20; -- 插入 INSERT INTO student (name, age, class) VALUES ('张三', 21, '计算机1班'); -- 更新 UPDATE student SET age = 22 WHERE name = '张三'; -- 删除 DELETE FROM student WHERE name = '张三';

编辑器下边的结果表格还有一个被很多人忽略的功能:可以直接在结果集里编辑数据。比如查询结果出来后,你想改某个字段的值,直接双击那个单元格修改,然后点击旁边的“提交”按钮,就相当于执行了一条UPDATE语句。这个功能特别适合快速修正测试数据,但要注意,它默认只对当前行的可更新结果生效,涉及多表关联的查询结果是不允许直接改的。

写SQL的时候用Navicat的“格式化SQL”功能,就是那个像刷子一样的图标,一键把乱糟糟的SQL整理成缩进清晰的格式。老师检查作业的时候看到排版整齐的SQL,第一印象就好很多。我自己交作业前都会先格式化一遍。

6. 真正学好MySQL连接,还差“理解服务端”这块拼图

Navicat的连接只是冰山水面之上的部分,水面之下是MySQL服务端的运行机制。我会建议所有初学者,哪怕平时都用Navicat操作,也至少要有能力直接用命令行完成一次连接和操作。我自己的体会是,在命令行里执行过mysql -u root -p,看到mysql>提示符出现的那一刻,对“数据库是独立的服务器软件”这个认知才会真正牢固。

6.1 一条命令看清数据库在做什么

Navicat的图形化界面把操作变得方便,但同时也会让人看不清底层逻辑。建议你在学习初期做这么一件事:先用命令行创建一个数据库,再在Navicat里刷新,看看它出现在列表里的过程。反过来也一样,在Navicat新建的表,回命令行用SHOW TABLES验证一下。这种两头对照的做法,能很快建立起“图形界面操作对应某条SQL”的映射感。

另一个理解服务端的方法是看日志。MySQL的日志文件记录了所有的连接请求和SQL执行记录。当Navicat连接不上时,除了看Navicat的报错,也可以去MySQL日志里查一下服务端到底拒绝了什么。Windows下日志文件一般在MySQL安装目录的data文件夹里,Linux下在/var/log/mysql/error.log。课堂上遇到过一次连接失败,Navicat只提示access denied,但日志里明确写了用户尝试连接的来源IP,这帮我一下就定位到了是权限配置的问题。

6.2 从连接配置开始建立“运维脑”

很多同学学完数据库,只会跟着老师的演示一步步点,从没想过连接的背后还有端口、监听、防火墙、权限、字符集这些概念。但其实Navicat第一次新建连接时让你填的那一堆参数,就是一个微型运维问题。为什么端口是3306而不是80?为什么root不能远程登录?为什么字符集错了会乱码?这些问题如果能在连接成功的基础上再追问一层,你对数据库的理解就会明显超过只停留在点击层面的同学。

我自己在学的时候会刻意用一个比较笨的方法:把连接删掉,重新填一遍,故意填错一个参数,比如把端口改成3307,看Navicat报什么错。报错信息看多了,以后再遇到真正的问题扫码就会快很多。这个“故意弄坏再修好”的思路,帮我建立起了对排查流程的熟悉度。反过来说,如果只依赖图形界面自动配置,一旦报错就会直接懵掉。

6.3 少走弯路的几个课堂实战建议

  • 建议准备一个笔记本,把root密码、连接名、端口这些信息单独记在一个地方。我见过太多人因为密码忘了把MySQL卸载重装,白白浪费时间。
  • 建议把Navicat的自动保存功能打开。查询编辑器里的SQL,如果没手动保存,软件闪退就全部丢失了。文件路径在软件设置里有。
  • 建议给不同的课设建不同的连接和不同的库。永远不要所有作业共用一个库,这就像衣柜里所有衣服堆在一起,找起来太痛苦了。
  • 建议把字符集问题当成第一优先级。建库的时候选错字符集,后面不管怎么改连接配置,中文都有可能出现乱码。表已经建好才发现这个问题,修改字符集的操作比重新建表还麻烦。

最后再分享一个小小的习惯。我每次拿到一台新电脑或者新的课堂环境,第一步不是装Navicat,而是先确认MySQL服务装没装、跑没跑。再漂亮的客户端也得有服务端在后面撑着。先把服务跑起来、端口通了,再打开Navicat填连接信息,整个过程顺下来一点都不会卡壳。你在课堂上遇到的连接问题,十有八九都能在“服务没启动”和“权限不对”这两类原因里找到答案。把这篇文章里的排查顺序记在心里,以后不管怎么换环境,连接MySQL这件事都难不倒你。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询