距离 n8n 1.0 发布已经过去两年多了。2025年12月8日,n8n 2.0 BETA 版本正式发布,并将于 12月15日 发布稳定版(Stable)。
很多用户可能期待大版本的更新会带来各种眼花缭乱的新功能,但 n8n 2.0 的核心主题非常明确且务实:“默认安全(Secure-by-default)”、可靠性与性能。
这次更新标志着 n8n 进一步向企业级平台迈进。为了实现更高的安全性与稳定性,官方引入了一系列“破坏性变更(Breaking Changes)”。在点击升级按钮之前,这篇文章将帮你梳理你需要知道的一切。
🚀 核心理念:为什么是 2.0?
n8n 遵循语义化版本控制。这意味着如果不增加主版本号,就不能发布破坏性变更。自 2023 年 7 月 1.0 发布以来,团队积攒了许多需要通过破坏性变更来实现的改进,包括安全加固和移除不稳定的旧功能。
此次 2.0 版本将所有这些改进整合在一起,旨在为关键任务工作流提供更强的安全性、可靠性和扩展性。
🔒 安全篇:默认更安全 (Secure by Default)
n8n 2.0 最显著的变化是收紧了默认设置。如果你之前的部署依赖于宽松的权限,升级后可能需要手动调整配置。
1. Task Runners 默认启用 为了隔离风险,Code 节点现在的执行将默认在隔离环境(Task Runners)中运行。这意味着 Code 节点对主进程的访问将受到限制。
- 注意: n8n 官方 Docker 镜像将不再包含用于 External Mode 的 Task Runner,你需要使用独立的
n8nio/runners镜像。 - Python 变化: 基于 Pyodide 的 Python 环境被移除,取而代之的是基于 Task Runner 的原生 Python。这意味着你不能再使用
_input或点符号访问变量,必须改用原生 Python 方式。
2. Code 节点禁止访问环境变量 为了防止凭证泄露,Code 节点默认被阻止访问环境变量。
- 如何迁移: 官方建议改用 Credentials 存储敏感数据。如果必须访问,需显式设置
N8N_BLOCK_ENV_ACCESS_IN_NODE=false。
3. 高风险节点默认禁用
Execute Command(执行任意命令)和 Local File Trigger(访问文件系统)节点默认被禁用。
- 如何迁移: 如果需要使用,需通过
NODES_EXCLUDE环境变量将其移出禁用列表。
4. 认证增强
OAuth 回调 URL 默认不再允许跳过认证 (N8N_SKIP_AUTH_ON_OAUTH_CALLBACK 默认为 false)。
🛠️ 工作流与体验:更符合直觉
1. “发布”与“保存”分离 (Publish / Save) 在 v1.x 中,保存一个激活的工作流会立即更新生产环境,这虽然方便但也容易导致“手滑”事故。 v2.0 引入了新的范式:Save(保存) 仅保存你的编辑草稿,而 Publish(发布) 才会显式地将更改推送到线上生产环境。这为后续即将推出的“自动保存”功能奠定了基础。
2. 子工作流(Sub-workflow)等待机制修复
这是一个期待已久的修复,但也是一个破坏性变更。
在 v1.x 中,如果子工作流包含 Wait 节点(例如等待 Webhook 或人工审批),父工作流往往会错误地收到子工作流的“输入数据”作为结果。
在 v2.0 中,父工作流将正确地等待子工作流完成,并接收子工作流结束时的最终输出数据。 这使得构建“人工介入(Human-in-the-loop)”审批流变得真正可行。
⚡ 性能与基础设施:更快、更稳
1. SQLite 性能暴增 10 倍 n8n 移除了旧版 SQLite 驱动,全面启用 Pooling Driver。新驱动使用 WAL 模式和连接池,基准测试显示速度最高可提升 10 倍。
2. 移除内存二进制数据模式 为了防止大文件撑爆内存,v2.0 移除了将二进制数据保留在内存中的选项。现在默认使用**文件系统(Filesystem)**或数据库存储二进制数据。请确保你的 n8n 实例有足够的磁盘空间。
3. 放弃 MySQL/MariaDB 支持 n8n 后端数据库不再支持 MySQL 和 MariaDB。官方建议迁移到 PostgreSQL 以获得最佳兼容性。
- 注:这指的是 n8n 自身的配置数据库,MySQL 节点(用于连接外部数据库)不受影响。
📋 升级前的准备清单
在按下更新键之前,请务必执行以下步骤:
-
检查迁移报告 (Migration Report) 如果你是全局管理员且版本在 1.119.0 以上,可以在 Settings -> Migration Report 中查看。该工具会自动扫描你的实例和工作流,列出所有受影响的配置和节点。
- 红色 Critical: 必须修复,否则工作流会挂。
- 黄色 Warning: 建议修复。
-
备份数据 特别是如果你正在使用 MySQL/MariaDB,请务必先使用工具将数据迁移至 PostgreSQL 或 SQLite。
-
开发环境调整
--tunnel启动参数已被移除,本地开发请改用 ngrok 或 Cloudflare Tunnel。
📅 时间表与后续
- 2.0.0 Beta: 2025年12月8日
- 2.0.x Stable: 2025年12月15日
- v1.x 支持周期: v1.x 将在 2.0 发布后继续支持 3个月,但这期间仅提供安全更新和 Bug 修复,不再添加新功能。
n8n 团队表示,未来将加快大版本的迭代频率(每年1-2个大版本),以便更灵活地交付改进。
这次升级是 n8n 从“好用的工具”向“可靠的平台”转变的重要一步。虽然破坏性变更带来了一些迁移成本,但换来的是一个更安全、更健壮的自动化底座。
准备好迎接 2.0 了吗?快去检查你的 Migration Report 吧!
📬 关注我获取更多资讯