navicat 17 不支持“参数模板”概念,也无法图形化配置定时备份;必须导出批处理/shell脚本并交由windows任务计划程序或cron调度执行。

Navicat 17 无法通过图形界面配置定时任务来自动备份数据库参数模板——它压根没有“参数模板”这个概念,也不支持对该类配置做独立备份。 所有被用户称为“参数模板”的东西(比如连接配置、SQL格式化偏好、快捷键设置、查询片段等),实际是 Navicat 的本地客户端配置,存储在用户目录下,和数据库备份完全无关。你真正能定时备份的,只有数据库内容本身(mysqldump 或 pg_dump 输出的 SQL 文件),或 Navicat 自己的备份文件(.psc)。
Navicat 17 里根本没有「数据库参数模板」这个功能项
官方文档与所有版本界面中均无“参数模板”入口。用户常混淆的几类东西实际归属如下:
- 连接配置(主机、端口、用户名等)→ 存于
%APPDATA%\PremiumSoft\Navicat\(Windows)或~/Library/Application Support/PremiumSoft/Navicat/(macOS),是客户端配置,非数据库对象 - SQL 格式化规则、快捷键、主题 → 同属客户端配置,不随数据库导出,也无法用
备份数据库功能捕获 - 查询片段(Query Snippets)→ 存为本地 JSON 文件,不在数据库内,Navicat 备份向导不会包含它
-
.psc文件 → 是 Navicat 自己的备份存档格式,封装了表结构+数据+部分元信息,但仍是针对具体数据库的,不是“模板”
你真正能定时备份的只有两类东西:.psc 文件或原生 SQL 导出
如果你目标是“让某套数据库结构+初始数据能定期归档”,那可行路径只有两个,且都绕不开手动导出再交由系统调度:
- 右键数据库 →
备份数据库→ 最后一步取消勾选“立即执行”,勾选“保存为批处理文件”(Windows)或“保存为 Shell 脚本”(macOS/Linux)→ 生成的脚本本质是调用mysqldump或pg_dump,输出.sql文件 - 右键数据库 →
备份数据库→ 勾选“压缩为 ZIP”并指定路径 → 手动保存为.psc文件 → 这个文件可被后续还原备份读取,但 Navicat 17 不提供对它的定时触发能力 - 两种方式都必须配合外部调度器:
Windows 任务计划程序或cron,Navicat 17 界面里已彻底移除计划任务和自动运行菜单项
为什么直接双击.bat/.sh 能跑,放进任务计划就失败
这是最常卡住的地方,根本原因不是 Navicat,而是环境隔离:
-
mysqldump命令在脚本里没加绝对路径(如C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe),任务计划默认 PATH 不含该目录 - 脚本里写的输出路径是相对路径(如
backup.sql),而任务计划的工作目录默认是System32或用户根目录,导致文件写到错地方甚至权限拒绝 - 密码明文写在脚本里(
--password=xxx)会被系统安全策略拦截;正确做法是改用mysql_config_editor set --login-path=local --user=root --password,再把脚本里的--user=root --password=xxx换成--login-path=local - Windows 任务计划中,“起始于”字段必须填脚本所在目录的**绝对路径**(如
C:\navicat_backups\),否则cd切不到上下文,路径解析全乱
真正要“自动备份数据库结构+数据”,别纠结“参数模板”这个词。先确认你要的是可移植的 SQL 文件,还是 Navicat 封装的 .psc;然后老老实实导出脚本,再配系统级调度——中间任何一步跳过,比如没设“起始于”路径、没处理密码、没验证脚本双击是否真生成文件,后面定时就注定静默失败。











