Supabase

🗄️ Supabase 数据库与向量搜索一站式 CLI

database榜 #2

Supabase CLI 封装工具,支持数据库 CRUD、SQL 查询、pgvector 向量搜索与表结构管理,需配置 Service Key 使用。

收藏
18.7k
安装
7.6k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

Supabase CLI 是一个命令行封装工具,用于与 Supabase 后端服务进行交互。主要功能覆盖四大领域:

1. 数据库操作:支持原始 SQL 查询(query)、表数据查询(select)、插入(insert)、更新(update)、删除(delete)及 upsert 操作。提供丰富的过滤选项(eq/neq/gt/lt/like)、排序、分页等功能。

2. 向量搜索:基于 pgvector 扩展实现相似性搜索,需预先创建 embedding 列和匹配函数。支持自定义相似度阈值、返回数量,默认集成 OpenAI embedding 模型。

3. 表结构管理:可列出所有表(tables)和查看表结构(describe),便于快速了解数据库 schema。

4. 存储过程调用:通过 rpc 命令调用数据库函数,支持传入 JSON 参数。

显著优点

  • 功能完整:覆盖 Supabase 核心 API 的主要使用场景,从简单查询到复杂的向量检索
  • CLI 友好:命令参数设计直观,过滤条件采用 --eq "col:val" 等易读格式
  • 向量检索原生支持:内置 pgvector 集成,降低 AI 应用开发门槛
  • 批量操作支持:insert 和 upsert 支持单条或多条 JSON 数组

潜在缺点与局限性

  • 权限风险:默认使用 Service Role Key 绕过 RLS(Row Level Security),存在数据越权访问风险
  • 无内置迁移工具:不包含数据库 schema 迁移/版本管理功能
  • embedding 依赖外部服务:向量搜索需外部 OpenAI API Key,增加配置复杂度
  • 错误处理不透明:文档未说明错误输出格式和退出码策略
  • 无连接池管理:高并发场景下可能遇到连接限制

适合人群

  • 需要快速操作 Supabase 数据库的开发者
  • 构建 RAG(检索增强生成)应用的 AI 开发者
  • 进行数据探索、原型验证的技术人员
  • 熟悉 SQL 和命令行操作的后端工程师

常规风险

| 风险类型 | 说明 |
|---------|------|
| 密钥泄露 | Service Key 具有完全数据库权限,泄露可导致数据被清空或篡改 |
| RLS 绕过 | 默认配置无视行级安全策略,可能意外暴露敏感数据 |
| SQL 注入 | 直接执行原始 SQL 时若拼接用户输入存在注入风险 |
| 误操作数据 | update/delete 无事务确认机制,可能误删大量数据 |
| API 配额 | OpenAI embedding 调用可能产生意外费用 |

Supabase 内容

暂无文件树

手动下载zip · 5.6 kB
contentapplication/octet-stream
请选择文件