找回密码
 创建社区账号
搜索
热搜: MCP 知识库 案例
查看: 67|回复: 0

第一部分:欢迎来到 n8n → 入门指南:安装与设置:自托管 → 配置 n8n → 数据库配置

[复制链接]

74

主题

0

回帖

40万

积分

超级版主

积分
400222
发表于 2025-5-13 18:19:03 | 显示全部楼层 |阅读模式
n8n 需要一个关系型数据库来持久化存储关键数据,包括工作流定义、凭证、执行历史、用户设置等。在生产环境中,强烈推荐使用 PostgreSQL 或 MySQL 作为 n8n 的数据库。
支持的数据库类型:
  • PostgreSQL: 一个强大、开源的关系型数据库,被广泛认为非常可靠和符合标准。
  • MySQL: 另一个流行的开源关系型数据库,拥有庞大的用户群体和成熟的生态系统。
  • SQLite: 默认情况下,如果未配置其他数据库,n8n 会使用 SQLite。然而,SQLite 不适合生产环境,因为它在并发访问和性能方面存在限制。它主要用于测试和开发目的。
配置步骤:
  • 安装和设置数据库服务:
    • 确保您的服务器上已经安装并运行了您选择的数据库服务(PostgreSQL 或 MySQL)。
    • 创建一个专门供 n8n 使用的数据库(例如,命名为 n8n)。
    • 创建一个用于连接 n8n 的数据库用户,并为该用户授予对 n8n 数据库的相应权限(通常需要 CREATE, READ, WRITE, DELETE, ALTER 等权限)。
  • 配置环境变量:您需要设置以下环境变量来告知 n8n 如何连接到您的数据库:
    • DATABASE_TYPE: 将其设置为 'postgres' 或 'mysql',取决于您选择的数据库。
    • DATABASE_URL: 这是数据库连接的 URL,包含了连接数据库所需的所有信息。
      • PostgreSQL DATABASE_URL 格式:
        postgres://<用户名>:<密码>@<主机名或 IP 地址>:<端口号>/<数据库名>


        例如:postgres://n8n_user:your_secret_password@localhost:5432/n8n_db
      • MySQL DATABASE_URL 格式:
        mysql://<用户名>:<密码>@<主机名或 IP 地址>:<端口号>/<数据库名>


        例如:mysql://n8n_user:your_secret_password@localhost:3306/n8n_db


    请将 <用户名>、<密码>、<主机名或 IP 地址>、<端口号> 和 <数据库名> 替换为您的实际数据库连接信息。PostgreSQL 的默认端口是 5432,MySQL 的默认端口是 3306。

重要注意事项:
  • 安全性: 确保您的数据库密码安全,并限制数据库用户的访问权限,只授予 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 稳定运行的关键步骤。请仔细检查您的数据库设置和环境变量。

您需要登录后才可以回帖 登录 | 创建社区账号

本版积分规则

QQ|手机版|小黑屋|n8n 中文社区

GMT+8, 2025-5-24 06:11 , Processed in 0.059487 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表