使用命令行从MongoDB数据库中的所有集合中删除所有索引?
以下是使用命令行从MongoDB数据库中的所有集合中删除所有索引的语法
db.getCollectionNames().forEach(function(yourVariableName) {
db.runCommand({dropIndexes: yourVariableName, index: "*"});
});上面的语法将删除除_id之外的所有索引。
让我们检查当前数据库。以下是查询
> db
这将产生以下输出
Test
以下是让我们在删除索引之前显示集合中一些索引的查询
> db.indexingDemo.getIndexes();
这将产生以下输出
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "test.indexingDemo"
},
{
"v" : 2,
"key" : {
"StudentFavouriteSubject" : 1
},
"name" : "StudentFavouriteSubject_1",
"ns" : "test.indexingDemo",
"background" : true
}
]以下是查询以删除MongoDB数据库中所有集合中的所有索引
> db.getCollectionNames().forEach(function(allCollectionName) {
... db.runCommand({dropIndexes: allCollectionName, index: "*"});
... });以下是检查索引是否已删除的查询
> db.indexingDemo.getIndexes();
这将产生以下输出
[
{
"v" : 2,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "test.indexingDemo"
}
]查看上面的示例输出,索引已成功删除。
热门推荐
10 同事换单位简短祝福语
11 谢谢朋友的祝福语简短
12 立秋节气简短祝福语
13 新房祝福语简短10字
14 长辈新年祝福语大全简短
15 新年给大家简短祝福语
16 生日祝福语简短独特姑姑
17 芭比的婚礼祝福语简短
18 邀请新人祝福语简短英文