Navicat分组信息不跨平台兼容,因Windows(.ncx二进制+XML)、macOS(plist)和Linux(JSON)存储路径、格式及键名均不同;导出/导入仅同步连接参数,不包含分组结构,需手动重建。

Navicat连接配置文件里的分组信息不跨平台兼容
跨平台导入后分组“打乱”,不是你操作错了,而是Navicat在Windows、macOS、Linux上存储分组信息的机制根本不同。分组数据不保存在数据库里,也不随连接配置导出/导入同步——它被硬编码进各平台本地的配置文件中,路径、格式、序列化方式全都不一样。
- Windows:分组信息存在
%APPDATA%\PremierSoft\Navicat\Connections\*.ncx文件里,用二进制+自定义XML混合格式 - macOS:存于
~/Library/Application Support/PremierSoft/Navicat/Connections/下,是plist格式,字段名和嵌套层级与Windows不一致 - Linux:通常写入
~/.navicat/Connections/,但用的是纯JSON,且键名(如groupOrdervsfolder_sequence)和排序逻辑可能缺失或错位
当你在Windows上导出连接(Export Connection),实际只导出连接参数(host/port/user等),不包含任何分组结构;导入到macOS时,Navicat会新建一个空分组树,再把表按字母顺序或创建时间塞进去——看起来就是“打乱”了。
Navicat没有提供官方的分组迁移功能
官方文档和菜单里找不到“Export Groups”或“Import Folder Structure”这类选项。所谓“导入连接”,只是恢复连接定义;分组是客户端侧的UI元数据,属于“本地偏好”,和浏览器书签一样,换设备就得重搭。
- 手动重建最快:在目标平台打开源平台的Navicat窗口(或截图),按原分组名逐个右键数据库 →
Create Group→ 拖表进去 - 别依赖“同步配置文件”:直接复制
Connections目录跨平台,大概率导致Navicat启动崩溃或分组显示为空 - 第三方脚本风险高:网上流传的Python解析.ncx改plist的方案,极易因版本更新失效(2026年v17.x已重构分组序列化逻辑)
分组顺序依赖客户端渲染逻辑,不是数据库对象
你看到的“用户中心”在“订单交易”上面,这个顺序不是由SQL控制的,而是Navicat在内存里维护的一个列表。macOS版默认按拼音首字母排,Windows版可能按拖拽历史排,Linux版甚至可能随机——连同一台机器上重启Navicat,分组展开顺序都可能微变。
- 不要在协作场景中假设分组顺序具有一致性;把它当成个人工作区整理习惯,而非团队规范
- 如果真要共享结构逻辑,用SQL注释或
CREATE TABLE语句里的-- GROUP: 用户中心标记,比依赖Navicat分组更可靠 - 备份时记得单独存一份分组映射表(比如Excel列:表名 → 所属分组),比指望配置文件迁移实在得多
真正跨平台稳定的,只有SQL本身。分组只是你屏幕上的便利贴,撕下来贴到另一台电脑上,得手写重贴一次。


















