SuperAPI AI 工具集

surrealdb-cli

通用与其它

查看项目

更新于 10-15 21:33

技能介绍

用途:本技能针对 SurrealDB 官方的 surreal 命令行二进制,帮助在本地或容器中运行服务端、查询数据库、导入导出数据以及执行维护操作。编写 SurrealQL 语句应使用 surrealql 技能;声明式 schema 迁移与类型生成应使用 surrealkit 技能。

主要能力与命令:surreal start [PATH] 以指定存储后端运行服务端;surreal sql 交互式 REPL 或管道非交互查询;surreal import <FILE> 载入 SurrealQL 脚本;surreal export [FILE] 导出数据库(默认输出到 stdout);surreal is-ready(别名 isready)在服务接受连接时返回 0;surreal version 查看本地与远端版本;surreal upgrade 升级二进制;surreal fix [PATH] 将磁盘存储迁移到当前格式;surreal ml <sub> 导入导出 SurrealML 模型。较新版本还有 mcp、module 等子命令,可用 surreal help 与 surreal <command> --help 确认。

安装示例:curl 方式 curl -sSf https://install.surrealdb.com | sh;Windows PowerShell 方式 iwr https://windows.surrealdb.com -useb | iex;Homebrew brew install surrealdb/tap/surreal;Docker docker run --rm --pull always -p 8000:8000 surrealdb/surrealdb:latest start。安装后用 surreal version 验证,生产环境建议固定具体镜像标签而非 latest。

连接参数:sql、import、export、ml 共享连接标志,均有 SURREAL_* 环境变量回退,显式标志优先。-e/--endpoint(sql 用 ws://localhost:8000,import/export 用 http://localhost:8000)、--namespace(--ns,回退 SURREAL_NAMESPACE,import/export/ml 必填)、--database(--db,回退 SURREAL_DATABASE,import/export/ml 必填)、-u/--username(--user,回退 SURREAL_USER)、-p/--password(--pass,回退 SURREAL_PASS)、-t/--token(回退 SURREAL_TOKEN,JWT,替代用户名密码)、--auth-level(回退 SURREAL_AUTH_LEVEL,可选 root、namespace/ns、database/db)。建议通过环境变量传递密钥,避免进入 shell 历史或进程列表。

快速开始示例:先 surreal start --user root --pass root memory 启动带认证的内存服务;再 surreal sql --endpoint ws://localhost:8000 --user root --pass root --ns main --db main --pretty 打开 REPL;然后 surreal import --endpoint http://localhost:8000 --user root --pass root --ns main --db main backup.surql 导入备份。

约定与限制:认证默认开启,surreal start 需 --user/--pass,仅在一次性本地实例使用 --unauthenticated;memory 为默认后端且数据在退出后丢失,持久化用 rocksdb:/surrealkv://,分布式集群用 tikv://;export 默认写 stdout;CI 可用 is-ready 做健康检查;大版本升级后若报存储版本不兼容,需对 start 使用的同一 PATH 执行 fix;命令与子命令随版本演进,本技能反映 v3.x,具体以已安装版本的 --help 为准。