데이터베이스 구조
n8n v2.29이 페이지는 n8n 데이터베이스의 각 테이블의 용도를 설명합니다. 기본적으로 n8n은 SQLite를 데이터베이스로 사용합니다. n8n은 쿼리 및 마이그레이션에 TypeORM을 사용합니다. n8n 데이터베이스를 검사하려면 오픈소스 범용 데이터베이스 도구인 DBeaver를 사용할 수 있습니다.
이 페이지는 n8n 데이터베이스의 각 테이블의 용도를 설명합니다.
데이터베이스 및 쿼리 기술#
기본적으로 n8n은 SQLite를 데이터베이스로 사용합니다. 다른 데이터베이스를 사용하는 경우 구조는 비슷하지만, 데이터베이스에 따라 데이터 유형이 다를 수 있습니다.
n8n은 쿼리 및 마이그레이션에 TypeORM을 사용합니다.
n8n 데이터베이스를 검사하려면 오픈소스 범용 데이터베이스 도구인 DBeaver를 사용할 수 있습니다.
테이블#
다음은 n8n이 설정 과정에서 생성하는 테이블입니다.
auth_identity#
SAML을 사용할 때 외부 인증 제공업체의 세부 정보를 저장합니다.
auth_provider_sync_history#
SAML 연결 이력을 저장합니다.
credentials_entity#
통합과 인증하는 데 사용되는 자격 증명1을 저장합니다.
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 node에서 사용되는 웹훅만이 아니라, 모든 트리거 노드에서 사용되는 모든 활성 웹훅을 포함합니다.
workflow_entity#
n8n 인스턴스에 저장된 워크플로입니다.
workflow_history#
워크플로의 이전 버전을 저장합니다.
workflow_statistics#
워크플로 ID와 그 상태를 집계합니다.
workflows_tags#
태그를 워크플로에 매핑합니다. tag_entity는 태그 세부 정보를 포함합니다.
엔터티 관계 다이어그램(Entity Relationship Diagram, ERD)#

Footnotes
-
n8n에서 자격 증명은 특정 앱 및 서비스와 연결하기 위한 인증 정보를 저장합니다. 인증 정보(사용자 이름과 비밀번호, API 키, OAuth 시크릿 등)로 자격 증명을 생성한 후, 연결된 앱 노드를 사용하여 해당 서비스와 상호 작용할 수 있습니다. ↩