如何从命令行中删除一个MongoDB数据库?

什么是从我的bash提示最简单的方法呢?

喜欢这个:

mongo <dbname> --eval "db.dropDatabase()" 

有关从命令行脚本从这里脚本的shell脚本:

最好的方法是从mongodb控制台:

 > use mydb; > db.dropDatabase(); 

或者,您可以停止mongod并从数据目录中删除数据文件,然后重新启动。

提示:您也可以将数据文件移动到子文件夹中,如果您确定不再需要这些文件夹,请将其删除。

你不需要heredocs或evalmongo本身可以作为一个解释器。

 #!/usr/bin/env mongo var db = new Mongo().getDB("someDatabase"); db.dropDatabase(); 

使文件可执行并运行它。

这有点冗长,但我认为它更安全:

 mongo //to start the mongodb shell show dbs //to list existing databases use <dbname> //the <dbname> is the database you'd like to drop db //should show <dbname> just to be sure I'm working with the right database db.dropDatabase() //will delete the database & return { "dropped" : "<dbname>", "ok" : 1 } 

启动MongoDB

数据库删除命令是:

1.首先select你要删除的数据库

 use < database name > 

然后用这个..

 db.dropDatabase() 

你也可以使用“heredoc”:

 mongo localhost/db <<EOF db.dropDatabase() EOF 

结果输出如下:

 mongo localhost/db <<EOF db.dropDatabase() EOF MongoDB shell version: 2.2.2 connecting to: localhost/db { "dropped" : "db", "ok" : 1 } bye 

我喜欢用heredocs来处理这样的事情,以防你想要更复杂的命令序列。

另一种方式:

 echo "db.dropDatabase()" | mongo <database name> 

这里有一些使用mongo shell的MongoDB的完全删除操作

删除集合中的特定文档: db.mycollection.remove( {name:"stack"} )

删除集合中的所有文档: db.mycollection.remove()

删除集合: db.mycollection.drop()

删除数据库:首先use mydb命令进入该数据库,然后

 db.dropDatabase() 

直接形成命令提示符或blash: mongo mydb --eval "db.dropDatabase()

在terminal执行:

 mongo // To go to shell show databases // To show all existing databases. use <DATA_BASE> // To switch to the wanted database. db.dropDatabase() // To remove the current database. 

使用Javascript,您可以轻松创builddrop_bad.js脚本来删除数据库:

创builddrop_bad.js

 use bad; db.dropDatabase(); 

在terminal运行1命令来使用mongo shell来执行脚本:

 mongo < drop_bad.js 

尽pipe有几种方法,最好的方法(最有效和最简单)是使用db.dropDatabase()

打开另一个terminal窗口并执行以下命令,

 mongodb use mydb db.dropDatabase() 

该操作的输出应该如下所示

 MAC:FOLDER USER$ mongodb > show databases local 0.78125GB mydb 0.23012GB test 0.23012GB > use mydb switched to db mydb >db.dropDatabase() { "dropped" : "mydb", "ok" : 1 } > 

请注意, mydb仍在使用,因此插入任何input将再次初始化数据库。

在你的命令提示符下,首先使用以下命令连接到mongodb:

  • mongo -h [host-name]:[port:number] -d [dbname] -u [username] -p [password]

你将会访问数据库。

运行以下命令删除整个数据库:

  • db.dropDatabase()

dropDatabase命令删除当前数据库,删除关联的数据文件。 有两种方法可以在MongoDB中删除数据库。 首先,如果你想从MongoDB中删除数据库天气 。 要删除数据库,首先要做的就是使用use命令切换到数据库,并给出如下的drop命令。

使用天气

db.runCommand({dropDatabaase:1})

其次,mongo shell还提供了辅助方法db.dropDatabase() 。 步骤与上述相同。

使用天气

db.dropDatabase()

如果您想了解更多信息,请查看http://docs.mongodb.org/manual/reference/command/dropDatabase/