gpt4 book ai didi

database - 通过 API 创建 MongoDB Atlas 数据库的副本

转载 作者:行者123 更新时间:2023-12-05 06:58:22 27 4
gpt4 key购买 nike

上下文
我们目前正在尝试在 M2 集群上复制名为 DatabaseA 的数据库。我们正在尝试通过使用 MongoDB Atlas 每 24 小时将我们的数据库克隆到一个名为 DatabaseB 的新数据库来创建集群的备份。

我们已经研究了以下链接:

但我们不知道如何实现它。

我们应该如何处理这个问题?

最佳答案

有两种方法。

(在我看来)最好的方法是使用 Mongo Atlas Datalake。他们在这里有一个指南,展示如何 copy from mongo to S3连续但同样的方法也可用于从一个 MongoDB 数据库复制到另一个。

总结和补充文档链接的粗略方法是:

  1. 创建 DataLake并将 DataLake 链接到 Atlas 中的 MongoDB 数据库
  2. 创建 Scheduled trigger每 24 小时运行一次。请参阅下面的伪代码片段

exports = async function() {
const movies = context.services
.get("DataLake0")
.db("Database0")
.collection("Collection0");

const pipeline = [
{
$match: {}
}, {
"$out": {
"atlas": {
"projectId": "111111111111111111111111",
"clusterName": "<YourOtherCluster>",
"db": "<YourOtherDB>",
"coll": "<CollectionName>"
}
}
}
];
return movies.aggregate(pipeline);
};
我主要通过 UI 完成此操作,但这里显示了一种以编程方式执行此操作的方法: DataLake API docs

similar question 中推荐的另一种方法

(不是直接问你关于 API 的问题;只是因为它是相关的才提到它)

方法是使用:

  • mongodump --host="mongodb0.example.com"

然后

  • mongorestore --host="mongodb0.example.com

参见链接问题或 docs了解更多详情。

关于database - 通过 API 创建 MongoDB Atlas 数据库的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64638714/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com