跳到主要内容

数据库结构#

本文档描述 n8n 数据库中各数据表的用途。

数据库与查询技术#

n8n 默认使用 SQLite 作为数据库。若使用其他数据库,结构将保持相似,但数据类型可能因数据库而异。

n8n 使用 TypeORM 进行查询和数据迁移。

如需查看 n8n 数据库,可使用开源通用数据库工具 DBeaver

数据表#

以下为 n8n 在初始化过程中创建的数据表。

auth_identity#

在使用 SAML 时存储外部认证提供商的详细信息。

auth_provider_sync_history#

记录 SAML 连接的历史同步信息。

credentials_entity#

存储用于集成认证的凭据

event_destinations#

包含日志流的目标配置信息。

execution_data#

存储工作流运行时的状态及执行数据。

execution_entity#

保存所有已存储的工作流执行记录。工作流设置会影响 n8n 保存的执行记录范围。

execution_metadata#

存储自定义执行数据

installed_nodes#

列出 n8n 实例中已安装的社区节点

installed_packages#

记录 n8n 实例中已安装的 npm 社区节点包详情。installed_nodes 列出单个节点,而 installed_packages 列出可能包含多个节点的 npm 包。

migrations#

记录所有数据库迁移日志。详见 TypeORM 文档中的迁移说明

project#

列出实例中的项目

project_relation#

描述用户与项目之间的关系,包括用户的角色类型

role#

当前未使用,为未来自定义角色功能预留。

settings#

记录自定义实例设置(无法通过环境变量控制的配置),包括:

  • 实例所有者是否完成设置
  • 用户是否跳过所有者及用户管理设置
  • SAML、LDAP 等认证方式是否启用
  • 许可证密钥

shared_credentials#

建立凭据与用户的映射关系。

shared_workflow#

建立工作流与用户的映射关系。

tag_entity#

存储 n8n 实例中创建的所有工作流标签。workflows_tags 记录标签与工作流的关联关系。

user#

存储用户数据。

variables#

存储变量

webhook_entity#

记录 n8n 实例工作流中的活跃 Webhook(不仅限于 Webhook 节点,包含所有触发器节点使用的活跃 Webhook)。

workflow_entity#

存储 n8n 实例中已保存的工作流。

workflow_history#

存储工作流的历史版本。

workflow_statistics#

统计工作流 ID 及其状态数量。

workflows_tags#

建立标签与工作流的映射关系。tag_entity 存储标签详细信息。

实体关系图 (ERD)#

"n8n 实体关系图"