n8n 需要一个关系型数据库来持久化存储关键数据,包括工作流定义、凭证、执行历史、用户设置等。在生产环境中,强烈推荐使用 PostgreSQL 或 MySQL 作为 n8n 的数据库。 支持的数据库类型: - PostgreSQL: 一个强大、开源的关系型数据库,被广泛认为非常可靠和符合标准。
- MySQL: 另一个流行的开源关系型数据库,拥有庞大的用户群体和成熟的生态系统。
- SQLite: 默认情况下,如果未配置其他数据库,n8n 会使用 SQLite。然而,SQLite 不适合生产环境,因为它在并发访问和性能方面存在限制。它主要用于测试和开发目的。
配置步骤: 重要注意事项: - 安全性: 确保您的数据库密码安全,并限制数据库用户的访问权限,只授予 n8n 所需的最小权限。
- 备份: 定期备份您的 n8n 数据库是非常重要的,以防止数据丢失。
- 性能: 对于大型或高负载的 n8n 实例,选择性能良好的数据库服务器并进行适当的优化至关重要。
- 字符编码 (MySQL): 如果您选择 MySQL,建议使用 utf8mb4 字符编码以支持更广泛的字符集。您可以在创建数据库时指定字符编码。
示例 .env 配置 (PostgreSQL): 代码段
DATABASE_TYPE=postgresDATABASE_URL=postgres://n8n:secure_password@db.example.com:5432/n8n_production
示例 .env 配置 (MySQL): 代码段
DATABASE_TYPE=mysqlDATABASE_URL=mysql://n8n:secure_password@db.example.com:3306/n8n_production?charset=utf8mb4
配置正确的数据库连接是 n8n 稳定运行的关键步骤。请仔细检查您的数据库设置和环境变量。
|