如何在Azure Cosmos DB中克隆/复制数据库

问题描述 投票:0回答:2

如何将Azure Cosmos DB中的数据库克隆到运行在localhost:27001上的mongod

我尝试了以下内容,但我无法使其正常工作:

db.cloneDatabase("mycosmosdb:[email protected]:10255/MyDatabase?ssl=true&replicaSet=globaldb")

从运行mongod的本地计算机运行命令时,将返回以下内容:

{
    "clonedColls" : [ ],
    "ok" : 0,
    "errmsg" : "connect failed to replica set mycosmosdb:[email protected]:10255/Mydatabase?ssl=true&replicaSet=globaldb:27017",
    "code" : 6,
    "codeName" : "HostUnreachable"
}

尝试此变体也会失败:

db.copyDatabase("NameOfAzureDB", "NameOfLocalDB", "username.documents.azure.com:10255", "username", "password")

{
    "ok" : 0,
    "errmsg" : "couldn't connect to server username.documents.azure.com:27017, connection attempt failed"
}
mongodb azure-cosmosdb
2个回答
0
投票

Cosmos DB不支持cloneDatabase,因为它包装的克隆命令不够灵活,不允许SSL连接和副本集的名称。它只接受主机名和端口号而不接受任何其他内容,因此不支持问题中使用的连接字符串(并且也没有“mycosmosdb”这样的名字)。


0
投票

使用新的Cosmic Clone工具,您可以

  1. 克隆任何环境的集合
  2. 创建具有类似设置的集合(索引,分区,TTL等)
  3. 通过清理或混洗文档中的敏感数据来匿名化数据。

同时阅读my blog

© www.soinside.com 2019 - 2024. All rights reserved.