数据库环境变量(Database environment variables)#
File-based configuration
You can add _FILE to individual variables to provide their configuration in a separate file. Refer to Keeping sensitive data in separate files for more details.
默认情况下,n8n 使用 SQLite。n8n 也支持 PostgreSQL。n8n 在 v1.0 中不再支持 MySQL 和 MariaDB。
🌐 By default, n8n uses SQLite. n8n also supports PostgreSQL. n8n deprecated support for MySQL and MariaDB in v1.0.
本页面概述了用于配置自托管 n8n 实例所选数据库的环境变量。
🌐 This page outlines environment variables to configure your chosen database for your self-hosted n8n instance.
| 变量 | 类型 | 默认值 | 描述 |
|---|---|---|---|
DB_TYPE/ _FILE |
枚举字符串:sqlite, postgresdb |
sqlite |
要使用的数据库。 |
DB_TABLE_PREFIX |
* | - | 用于表名的前缀。 |
DB_PING_INTERVAL_SECONDS |
数字 | 2 |
发送 ping 到数据库以检查连接是否仍然活跃的时间间隔(以秒为单位)。 |
PostgreSQL#
| 变量 | 类型 | 默认值 | 描述 |
| :------- | :---- | :------- | :---------- |
| DB_POSTGRESDB_DATABASE
/_FILE | 字符串 | n8n | PostgreSQL 数据库的名称。 |
| DB_POSTGRESDB_HOST
/_FILE | 字符串 | localhost | PostgreSQL 主机。 |
| DB_POSTGRESDB_PORT
/_FILE | 数字 | 5432 | PostgreSQL 端口。 |
| DB_POSTGRESDB_USER
/_FILE | 字符串 | postgres | PostgreSQL 用户。 |
| DB_POSTGRESDB_PASSWORD
/_FILE | 字符串 | - | PostgreSQL 密码。 |
| DB_POSTGRESDB_POOL_SIZE
/_FILE | 数字 | 2 | 控制 n8n 应同时打开多少个并行的 Postgres 连接。增加它可能有助于资源利用,但连接过多可能会降低性能。 |
| DB_POSTGRESDB_CONNECTION_TIMEOUT
/_FILE | 数字 | 20000 | Postgres 连接超时(毫秒)。
| DB_POSTGRESDB_IDLE_CONNECTION_TIMEOUT
/_FILE | 数字 | 30000 | 空闲连接因空闲而有资格被驱逐前的时间长度。
| DB_POSTGRESDB_SCHEMA
/_FILE | 字符串 | public | PostgreSQL 模式。 |
| DB_POSTGRESDB_SSL_ENABLED
/_FILE | 布尔值 | false | 是否启用 SSL。如果定义了 DB_POSTGRESDB_SSL_CA、DB_POSTGRESDB_SSL_CERT 或 DB_POSTGRESDB_SSL_KEY,将自动启用。 |
| DB_POSTGRESDB_SSL_CA
/_FILE | 字符串 | - | PostgreSQL 的 SSL 证书授权机构。 |
| DB_POSTGRESDB_SSL_CERT
/_FILE | 字符串 | - | PostgreSQL SSL 证书。 |
| DB_POSTGRESDB_SSL_KEY
/_FILE | 字符串 | - | PostgreSQL SSL 密钥。 |
| DB_POSTGRESDB_SSL_REJECT_UNAUTHORIZED
/_FILE | 布尔值 | true | 如果 n8n 应拒绝未经授权的 SSL 连接(true)或不拒绝(false)。 |
SQLite#
| 变量 | 类型 | 默认值 | 描述 |
|---|---|---|---|
DB_SQLITE_POOL_SIZE |
数字 | 0 |
控制是否以 WAL 模式 或 回滚日志模式 打开 SQLite 文件。设置为零时使用回滚日志模式。当大于零时,使用 WAL 模式,并且该值决定要配置的并行 SQL 读取连接数。WAL 模式的性能和可靠性远高于回滚日志模式。 |
DB_SQLITE_VACUUM_ON_STARTUP |
布尔值 | false |
启动时运行 VACUUM 操作以重建数据库。减少文件大小并优化索引。这是一个耗时的阻塞操作,会增加启动时间。 |