Navicat 默认数据保存路径分三类:连接配置(硬编码不可改)、用户文件(可单独设置)、MySQL服务数据目录(与Navicat无关);修改备份/查询路径需在连接属性高级页操作,迁移连接配置须用管理员权限创建目录联结。
navicat 的“默认数据保存路径”不是单一概念——它分三类:连接配置(不可改)、用户生成文件(可改)、mysql 服务自身数据目录(独立于 navicat)。直接在设置里找“修改默认数据路径”会走错方向,因为 navicat.cfg(v12–v14)或 navicat15.db(v15+)的位置是硬编码的,图形界面根本不提供入口。
为什么“工具 → 选项 → 文件和数据”改不了连接配置路径
这个界面能调的只是 queries、backups、import 等用户操作产生的文件路径,背后不涉及连接元数据。Navicat 启动时强制读取 %appdata%\PremiumSoft\Navicat\ 下的 navicat15.db(含 -shm 和 -wal),UI 层没有对应配置项。试图在这里改“数据路径”,实际改的是备份脚本存哪,不是连接列表存哪。
如何安全修改备份/查询/导出等用户文件路径
这类路径完全可控,且每个连接可单独设置,推荐优先调整:
- 右键已有连接 → 连接属性 → 切换到 高级 标签页 → 修改
文件保存位置(例如改为D:\NavicatData\MySQL\Servers\prod_db) - 新建连接时,在 高级 页里点
浏览选择目标文件夹,该路径会成为此连接下所有备份、查询、导入导出的默认根目录 - 若想统一所有连接的默认位置,需逐个连接设置;Navicat 不提供全局“默认保存路径”开关
- 路径中避免使用中文、空格、特殊字符,否则某些版本(如 v15.0.24)在自动命名备份文件时可能报
Invalid argument
想把连接配置挪出 C 盘?只能用符号链接
真正存储连接信息的 navicat15.db 及其配套文件(navicat15.db-shm、navicat15.db-wal)必须保留在原路径逻辑下,否则启动即重建空白配置。可行做法是:
- 彻底关闭 Navicat 所有进程(包括托盘图标,任务管理器里确认无
Navicat.exe) - 剪切整个
%appdata%\PremiumSoft\Navicat\文件夹到目标位置(如D:\NavicatConfig\) - 以管理员身份运行 CMD,执行:
mklink /J "%appdata%\PremiumSoft\Navicat" "D:\NavicatConfig" - 重启 Navicat,检查连接是否完整加载;若失败,说明符号链接未生效或权限不足
注意:mklink /J 创建的是目录联结(junction),不是普通快捷方式,Windows 会将其透明识别为原路径。直接复制粘贴、改注册表、或 patch 可执行文件,大概率导致 navicat15.db 解密失败(v15+ 使用机器绑定 AES-256 密钥),表现为连接列表为空且无法恢复。
别混淆:MySQL 数据库文件 ≠ Navicat 数据文件
很多人搜“Navicat 数据保存路径”其实想改的是 MySQL 本身的数据目录(.ibd、.frm 文件),这和 Navicat 完全无关。那是 MySQL 服务的配置,由 my.ini 中的 datadir 决定,修改后需停掉 mysqld.exe、迁移文件、更新路径、重启服务。Navicat 只是客户端,它不存也不管这些文件。
真正容易被忽略的点是:符号链接必须用管理员权限创建,且目标路径不能是网络驱动器或 OneDrive 同步文件夹——SQLite 数据库文件在非本地 NTFS 卷上极易损坏。一旦 navicat15.db 损坏或解密失败,连接配置就彻底不可逆丢失,没有官方恢复手段。


















