数据库结构#
本文档描述 n8n 数据库中每个表的作用。
数据库与查询技术#
默认情况下,n8n 使用 SQLite 作为数据库。如果您使用其他数据库,结构会类似,但数据类型可能因数据库而异。
n8n 使用 TypeORM 进行查询和迁移。
要检查 n8n 数据库,您可以使用 DBeaver,这是一个开源的通用数据库工具。
数据表#
以下是 n8n 在安装过程中创建的表。
auth_identity#
存储使用 SAML 时的外部认证提供者详细信息。
auth_provider_sync_history#
存储 SAML 连接的历史记录。
credentials_entity#
存储用于与集成服务进行认证的凭证。
event_destinations#
包含日志流的目标配置。
execution_data#
包含运行时的 workflow 数据及执行数据。
execution_entity#
存储所有已保存的 workflow 执行记录。Workflow 设置会影响 n8n 保存哪些执行记录。
execution_metadata#
存储自定义执行数据。
installed_nodes#
列出您的 n8n 实例中安装的社区节点。
installed_packages#
详细记录 n8n 实例中安装的 npm 社区节点包。installed_nodes 列出每个单独的节点,而 installed_packages
列出可能包含多个节点的 npm 包。
migrations#
记录所有数据库迁移的日志。更多关于迁移的信息请参阅 TypeORM 文档。
project#
列出您实例中的所有项目。
project_relation#
role#
当前未使用。预留用于未来自定义角色功能开发。
settings#
记录自定义实例设置。这些是无法通过环境变量控制的设置,包括: * 实例所有者是否已设置 * 用户是否选择跳过所有者和用户管理设置 * 许可证密钥
shared_credentials#
将凭证映射到用户。
shared_workflow#
将工作流映射到用户。
tag_entity#
n8n实例中创建的所有工作流标签。此表列出标签信息,具体工作流与标签的关联关系记录在workflows_tags表中。
user#
包含用户数据。
variables#
存储变量。
webhook_entity#
记录n8n实例工作流中的活动webhook。不仅限于Webhook节点使用的webhook,还包括所有触发器节点使用的活动webhook。
workflow_entity#
保存n8n实例中的工作流。
workflow_history#
存储工作流的先前版本。
workflow_statistics#
统计工作流ID及其状态。
workflows_tags#
将标签映射到工作流。标签详细信息存储在tag_entity中。