MongoDB在SyncClusterConnection上重命名或删除集合

时间:2015-12-10 15:54:52

标签: mongodb

我有一个我想要删除/重命名的集合。我写了以下javascript来执行此操作:

var now = new Date();
var runTime = now.getTime();
var newCollName = "myColl." + runTime;
db.myColl.renameCollection(newCollName);

当我在单个节点上运行脚本dev安装drop或rename工作正常。但是,当我在群集的真实实例上尝试相同的命令并使用replicasets时,我收到以下错误:

Renaming myColl collection to : myColl.1449761151171
2015-12-10T15:25:55.703+0000 E QUERY    Error: write $cmd not supported in SyncClusterConnection::query for:renameCollection
at DBQuery._exec (src/mongo/shell/query.js:83:36)
at DBQuery.hasNext (src/mongo/shell/query.js:240:10)
at DBCollection.findOne (src/mongo/shell/collection.js:187:19)
at DB.runCommand (src/mongo/shell/db.js:58:41)
at DB.adminCommand (src/mongo/shell/db.js:66:41)
at DBCollection.renameCollection (src/mongo/shell/collection.js:642:21)

我已经阅读了关于drop和renameCollection的mongodb笔记,但他们没有提到在集群数据库上运行命令时需要做任何特殊的事情。

我需要做什么来存档像这样结构的MongoDB上的集合?

感谢。

0 个答案:

没有答案