阿里云自助建站教程/企业培训课程
我在MongoDB上进行开发。 对于完全非邪恶的目的,我有时想要吹掉数据库中的所有东西 - 也就是说,删除每一个集合,以及其他任何可能存在的东西,并从头开始。 是否有一行代码可以让我这样做? 同时给出MongoDB控制台方法和MongoDB Ruby驱动程序方法的加分点。
#1楼
另外,从命令行:
mongo DATABASE_NAME --eval "db.dropDatabase();"
#2楼
使用
[databaseName]
db.Drop+databaseName();
drop collection
use databaseName
db.collectionName.drop();
#3楼
听到一些使用mongo shell的mongodb的完全删除操作
要删除集合中的特定文档: db.mycollection.remove( {name:"stack"} )
要删除集合中的所有文档: db.mycollection.remove()
删除集合: db.mycollection.drop()
删除数据库:首先use mydb命令转到该数据库然后
db.dropDatabase()
#4楼
当我需要重置所有集合但不想让任何数据库用户失去时,我遇到了同样的问题。 如果要保存数据库的用户配置,请使用以下代码行:
use
db.getCollectionNames().forEach(function(c) { if (c.indexOf("system.") == -1) db[c].drop(); })
此代码将遍历一个数据库中的所有集合名称,并删除那些不以“system”开头的集合。
#5楼
如果要仅删除数据库及其子集合,请使用以下命令:
use ;
db.dropDatabase();
如果你想删除mongo中的所有数据库,那么使用:
db.adminCommand("listDatabases").databases.forEach(function(d)
{
if(d.name!="admin" && d.name!="local" && d.name!="config")
{
db.getSiblingDB(d.name).dropDatabase();
}
}
);