对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

获取一个集群的可恢复时间范围

基本 URL: https://cloud.mongodb.com/api/public/v1.0

POST /groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs/restorableTimeRanges

返回项目中已启用备份的副本集或分片集的可恢复时间范围。每个可恢复时间范围都代表Cloud Manager 可安全恢复的连续 oplog 历史窗口。

要调用此终结点,您必须具有Project Backup AdminOrganization Read Only角色。

名称
类型
说明

PROJECT-ID

字符串

用于标识拥有集群的项目的唯一 24-十六进制数字字符串。

CLUSTER-ID

字符串

用于标识已启用备份的集群的唯一 24 位十六进制数字字符串,您可以返回该集群的可恢复时间范围。

以下查询参数为可选参数:

名称
类型
必要性
说明
默认

pretty

布尔

Optional

指示响应正文是否应采用 prettyprint 格式的标记。

false

envelope

布尔

Optional

指示是否将响应包装在信封中的标志。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true

对于返回一个结果的端点,响应体包括:

名称
说明

status

HTTP 响应代码

content

预期响应正文

false

此端点不使用 HTTP 请求正文参数。

响应主体包含一个可恢复时间范围的数组。对于副本集,每个元素包含以下字段:

名称
类型
说明

start

BSON时间戳

此可恢复范围内的最早时间点。此值是具有 dateincrement 字段的 BSON 时间戳对象,这些字段可以唯一标识 oplog 条目。

end

BSON时间戳

此可恢复范围内的最新时间点。Cloud Manager 可以安全地将此范围恢复到 startend 之间的任何时间(包括这两个时间)。

snapshotId

字符串

用于标识与此范围相关的快照或集群快照的唯一 24-十六进制数字字符串。

对于分片集群,每个元素还包括:

名称
类型
说明

shardCount

整型

参与此可恢复时间范围的分片数量。

configServerType

字符串

人类可读标签,用于指示分片集群是否使用嵌入式或专用配置服务器部署。

Cloud Manager 返回可恢复的时间范围,按从最早到最晚的开始时间顺序排列。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/clusters/{CLUSTER-ID}/restoreJobs/restorableTimeRanges?pretty=true"
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}
X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
[
{
"end" : {
"date" : "2021-07-17T19:00:00Z",
"increment" : 1
},
"snapshotId" : "{SNAPSHOT-ID}",
"start" : {
"date" : "2021-07-14T00:00:00Z",
"increment" : 1
}
}
]