跳到主要内容

文档型数据库(NoSQL)

v3.0.0+

tcb db nosql 命令自 v3.0.0 起提供。

tcb db nosql 命令用于对 CloudBase 文档型数据库执行原生命令、数据导出及数据回档操作。

前置条件

需要先在 CloudBase 控制台 开通文档型数据库服务。

tcb db nosql execute

执行 MongoDB 风格命令(RunCommands 接口)。

tcb db nosql execute --command '<json>' [options]

参数

参数说明必填
-c, --command <json>MgoCommands JSON
--tag <tag>实例 Tag(同环境多实例时用于区分)
--instanceId <id>MongoConnector 实例 ID
--databaseName <name>MongoConnector 数据库名
-e, --env-id <envId>环境 ID

接口文档:RunCommands · MgoCommandParam 数据结构

示例

# 查询 users 集合的前 5 条
tcb db nosql execute \
--command '{"find": "users", "limit": 5}' \
-e my-env-id

# 指定实例执行
tcb db nosql execute \
--command '{"count": "orders", "query": {"status": "paid"}}' \
--instanceId inst-xxx \
-e my-env-id

tcb db nosql dump

导出指定集合的数据。

tcb db nosql dump <collection> [options]

参数

参数说明必填
<collection>要导出的集合名称
--file-type <fileType>导出文件格式,可选 jsoncsv,默认为 json
--fields <fields>要导出的字段名,以英文逗号分隔;选择 csv 格式时必须指定
--output-dir <outputDir>导出完成后下载文件的本地目录;未指定时输出下载 URL
-e, --env-id <envId>环境 ID

导出任务完成后,指定 --output-dir 时 CLI 会将文件下载到该目录;未指定时会输出下载 URL。使用全局 --json 选项时,输出中包含任务 ID、任务状态、成功和失败记录数,以及下载 URL 或本地文件路径。

示例

# 将 users 集合导出为 JSON,并输出下载 URL
tcb db nosql dump users -e my-env-id

# 将 orders 集合的 JSON 文件下载到本地目录
tcb db nosql dump orders \
--file-type json \
--output-dir ./exports \
-e my-env-id

# 导出指定字段的 CSV 文件并下载到本地目录
tcb db nosql dump users \
--file-type csv \
--fields _id,name,createdAt \
--output-dir ./exports \
-e my-env-id

注意事项

  • 使用 --file-type csv 时必须指定 --fields
  • 导出文件可能包含敏感业务数据;请妥善保管下载 URL 和本地文件,避免提交到代码仓库。

数据回档

数据回档允许将文档型数据库还原到某个历史时间点或指定备份快照。

tcb db nosql restore-time

查询当前可回档的时间范围。

tcb db nosql restore-time [options]

tcb db nosql restore-tables

查询指定时间点可回档的集合列表。

tcb db nosql restore-tables --time <time> [--filters <collections>] [options]
参数说明
--time <time>回档目标时间(如 2026-03-10 14:30:00
--filters <collections>过滤条件,逗号分隔的集合名列表

tcb db nosql restore

执行实例表格回档。

tcb db nosql restore --time <time> --tables '<json>' [options]
参数说明必填
--time <time>回档目标时间
--tables <json>回档表格映射 JSON 数组
--instanceId <id>MongoConnector 实例 ID
--databaseName <name>MongoConnector 数据库名

--tables 格式:

[{ "OldTableName": "原集合名", "NewTableName": "新集合名(回档目标)" }]

tcb db nosql restore-task

查询回档任务进度。

tcb db nosql restore-task [options]

完整回档示例

# 1. 查看可回档时间范围
tcb db nosql restore-time -e my-env-id

# 2. 查看该时间点可回档的集合
tcb db nosql restore-tables --time "2026-03-10 14:00:00" -e my-env-id

# 3. 执行回档(覆盖写到新集合名)
tcb db nosql restore \
--time "2026-03-10 14:00:00" \
--tables '[{"OldTableName":"orders","NewTableName":"orders_restored"}]' \
-e my-env-id

# 4. 查询回档任务进度
tcb db nosql restore-task -e my-env-id