如何将远程Mongo服务器上的集合克隆到本地Mongo服务器?

23 浏览
0 Comments

如何将远程Mongo服务器上的集合克隆到本地Mongo服务器?

我在StackOverflow上阅读了一些关于cloneCollection数据库命令的帖子。从命令行中确实可以正常工作。

但是是否有办法使用C# Mongo客户端运行cloneCollection

我尝试过:

local_database.RunCommand("{ cloneCollection : \"\", from: \":27017\" }"

我确实收到了一个Ok响应,但没有发生任何变化...

0
0 Comments

问题的原因是需要将远程Mongo服务器上的集合克隆到本地Mongo服务器。解决方法是通过使用C#客户端运行管理员命令的正确语法。

以下是正确的语法示例:

var command = new BsonDocumentCommand(new BsonDocument(new List()
{
    new BsonElement("cloneCollection", "."),
    new BsonElement("from", ":27017"),
    new BsonElement("query", "{}")
}));
local_database.RunCommand(command);

以上代码将使用C#客户端将远程Mongo服务器上的指定集合克隆到本地Mongo服务器。其中,``是要克隆的集合所在的数据库名称,``是要克隆的集合名称,``是远程Mongo服务器的IP地址。

通过运行上述代码,可以在本地Mongo服务器上创建一个与远程服务器上指定集合相同的集合,并将其数据克隆到本地。这样可以实现将远程Mongo服务器上的集合复制到本地Mongo服务器的目的。

0