一、背景介绍

NocoDB 是一款开源无代码数据库平台,核心定位是 “为全球每一家互联网企业提供最强大的数据库无代码界面”。它以 “数据库优先” 为核心理念,打破了传统数据库与普通用户之间的技术壁垒,通过将 MySQL、PostgreSQL 等主流数据库转化为 “智能电子表格”,让非技术人员无需编写 SQL 语句即可操作生产环境中的实时数据。

相较于 Airtable 等同类 SaaS 产品,NocoDB 的核心优势体现在三方面:一是开源免费且支持自托管,规避了供应商锁定、数据主权受限及价格突变等风险;二是直接对接现有数据库,无需迁移数据即可复用原有存储架构与性能优势;三是自动生成 API 接口,实现与其他系统的无缝集成。这种特性使其成为连接技术团队与业务团队的桥梁,推动数据管理的民主化与协作效率的提升。

二、安装部署

NocoDB 提供多种安装方式,适配本地服务器、云平台等不同部署场景,以下为常用方法的详细步骤:

(一)Docker 部署(推荐)

Docker 部署具有环境一致性强、操作简便的优势,适用于大多数 Linux、macOS 及 Windows 系统。

前置条件:已安装 Docker Engine(版本 20.10 及以上)。

部署命令

在终端执行以下命令,自动拉取镜像并启动服务:

docker run -d -p 7823:8080 \
-v /usr/local/nocodb:/usr/app/data \
--name nocodb nocodb/nocodb

其中-v nocodb_data:/usr/app/data用于持久化存储数据,避免容器删除后数据丢失。

验证启动:执行docker ps命令,若看到nocodb容器状态为Up,则部署成功。通过浏览器访问http://localhost:8080即可进入界面。

image-20250918135210131

(二)Homebrew 部署(macOS/Linux)

Homebrew 适用于熟悉包管理工具的用户,安装流程如下:

前置条件:已安装 Homebrew 包管理器。

安装步骤

  • 添加 NocoDB 仓库:brew tap nocodb/nocodb
  • 安装应用:brew install nocodb
  • 启动服务:nocodb

更新与排障

  • 更新版本:brew upgrade nocodb

  • 端口冲突解决:通过export PORT=8081指定其他端口后重启服务。

(三)云平台部署
1. Sealos 部署(最快开箱即用)

Sealos 应用市场提供一键部署功能,步骤如下:

  • 访问 Sealos 应用市场,搜索 “NocoDB”;
  • 点击 “部署”,配置服务器资源(建议最低 1 核 2G 内存);
  • 等待部署完成,通过分配的 URL 访问服务。
2. Railway 部署
  • 进入 Railway 模板市场,搜索 “NocoDB”;
  • 点击模板后选择 “Deploy”,配置环境变量(如数据库连接信息);
  • 平台自动完成部署,生成访问链接。
3. Cloudron 部署
  • 登录 Cloudron 仪表盘,进入应用商店;
  • 搜索 “NocoDB” 并点击 “安装”;
  • 配置存储与网络参数,完成后在 “我的应用” 中启动。
(四)企业版部署(私有测试阶段)

针对企业用户需求,NocoDB 推出高级商业版本,支持 Oracle 数据库和 Snowflake 数据仓库连接,提供 SSO、审计等企业级功能。需通过官方渠道申请测试资格,部署流程参考专属技术文档。

三、基础使用指南

image-20250918135002674

(一)初始配置与数据源连接

账户创建:首次访问界面需注册管理员账户,填写邮箱、密码完成初始化。

新建项目

  • 点击 “New Project”,选择项目类型:
    • “Empty Project”:从零创建数据库表;
    • “Connect to Database”:对接现有数据库(支持 MySQL、PostgreSQL 等)。

连接外部数据库(以 PostgreSQL 为例):

  • 输入数据库主机地址、端口、用户名、密码及数据库名称;
  • 点击 “Test Database Connection” 验证连通性;
  • 验证通过后点击 “Submit”,即可加载数据库中的表结构。
(二)数据管理核心操作
1. 表格与字段设计
  • 新建表格:在项目中点击 “+ Table”,设置表名称后进入字段配置;
  • 字段类型:支持文本、数字、日期、文件、单选 / 多选、公式等 20 余种类型,可设置必填、唯一等验证规则;
  • 表关系设置:通过 “Link to Table” 字段建立一对一、一对多等关联,如 “订单表” 关联 “客户表”。
2. 多视图数据操作

NocoDB 提供 5 种核心视图,适配不同场景:

  • 网格视图(Grid):默认视图,类似 Excel 表格,支持筛选(如 “金额> 1000”)、排序和列隐藏;
  • 看板视图(Kanban):按状态分组展示数据,支持拖拽更新(如任务从 “待办” 移至 “完成”);
  • 日历视图(Calendar):基于日期字段展示数据,适用于日程管理;
  • 画廊视图(Gallery):以卡片形式展示,支持图片预览,适合产品库管理;
  • 表单视图(Form):生成数据收集表单,可分享链接供外部填写。

image-20250918135025799

3. 团队协作与权限控制

用户管理:通过 “Settings> Team” 邀请成员,设置角色(管理员、编辑者、只读用户);

精细化权限:针对单个表格或视图设置权限,如仅允许财务团队编辑 “报销表”;

实时协作:多成员可同时编辑数据,界面实时同步更新内容。

image-20250918135119412

(三)API 与自动化功能
1. 自动 API 生成

连接数据库后,系统为每个表格自动生成 RESTful API 和 GraphQL API:

  • 访问 “API” 菜单,获取接口文档(Swagger 格式);
  • API 支持 CRUD 操作,如获取表格数据:GET /api/v1/db/data/noco/[table-id];
  • 认证方式:支持 JWT 令牌,在请求头中携带xc-token参数。
2. 自动化工作流

通过 “Automation” 功能设置触发规则与动作:

  • 触发事件:记录创建、更新、删除等;
  • 执行动作:发送邮件、调用 Webhook、更新关联记录等;
  • 示例场景:当 “订单表” 新增记录时,自动发送通知邮件给负责人。
(四)数据备份与迁移

备份:自托管用户可通过以下方式备份:

  • Docker 部署:备份nocodb_data卷数据;
  • 数据库层面:直接备份底层关联的 MySQL/PostgreSQL 数据库。

迁移:通过 “Settings> Export” 导出项目配置,在新实例中导入即可完成迁移。

可能遇到的“坑”与小贴士

  • 权限: 确保你连接数据库的用户拥有足够的权限(SELECT, INSERT, UPDATE, DELETE, ALTER TABLE等),尤其如果NocoDB需要同步修改表结构时(如通过NocoDB界面添加新字段)。
  • 数据库连接:
    • SSL: 云数据库(如AWS RDS)通常强制SSL连接,记得勾选并提供证书(如果需要)。
    • 远程访问: 确保数据库服务器允许NocoDB所在主机的IP连接。配置数据库服务器(如修改MySQL的bind-address或配置安全组/防火墙规则)。
    • 连接名冲突: 同一个NocoDB项目内不能有重复的连接名称(Connection Name),即使连接的是不同数据库也不行。
  • 数据加载慢: 对于大数据量表(几十万、百万行),NocoDB的网格视图加载可能会慢。尽量使用筛选器缩小范围,或避免在网格视图操作超大数据集。
  • 视图缓存: NocoDB对视图有一定的缓存机制。如果你直接在数据库后端修改了数据(非通过NocoDB界面),视图可能需要手动刷新或等待短暂缓存过期才能看到最新数据。
  • 备份!备份!备份! NocoDB管理的是你的核心数据库,务必对你的生产数据库做好定期的、独立的备份。不要完全依赖NocoDB。
  • 利用App Store: 探索NocoDB的应用商店(App Store),可以快速集成很多常用服务(日志存储如ClickHouse/ElasticSearch,消息通知如Slack/SMTP),省去自己开发的麻烦。
  • API调用: 开发人员可以利用NocoDB提供的清晰API文档生成API Token,让其他系统可以安全地与NocoDB管理的数据库进行交互。
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐