从我的bash提示符中执行此操作的最简单方法是什么?
答案 0 :(得分:1036)
像这样:
mongo <dbname> --eval "db.dropDatabase()"
有关在命令行编写shell脚本的更多信息,请访问:https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#scripting
答案 1 :(得分:829)
最好的方法是从mongodb控制台:
> use mydb;
> db.dropDatabase();
或者,您可以停止mongod
并从数据目录中删除数据文件,然后重新启动。
提示:您也可以将数据文件移动到子文件夹,如果您确定不再需要它们,则将其删除。
答案 2 :(得分:112)
您不需要heredocs或eval ,mongo
本身可以充当翻译。
#!/usr/bin/env mongo
var db = new Mongo().getDB("someDatabase");
db.dropDatabase();
使文件可执行并运行它。
答案 3 :(得分:110)
我发现这很容易记住:
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 }
答案 4 :(得分:31)
启动MongoDB
数据库删除命令是:
1。首先选择要删除的数据库
use < database name >
2. 然后使用此..
db.dropDatabase()
答案 5 :(得分:28)
你也可以使用“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来做这样的事情,以防你需要更复杂的命令序列。
答案 6 :(得分:18)
其他方式:
echo "db.dropDatabase()" | mongo <database name>
答案 7 :(得分:18)
以下是一些使用mongo shell
的mongodb的完全删除操作在馆藏中删除特定文件:db.mycollection.remove( {name:"stack"} )
要收藏集合中的删除所有文档:db.mycollection.remove()
删除集合:db.mycollection.drop()
到删除数据库:
首先通过use mydb
命令转到该数据库,然后
db.dropDatabase()
直接从命令提示符或blash:mongo mydb --eval "db.dropDatabase()
答案 8 :(得分:15)
在终端执行:
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.
答案 9 :(得分:11)
打开另一个终端窗口并执行以下命令,
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
仍在使用中,因此此时插入任何输入将再次初始化数据库。
答案 10 :(得分:4)
使用Javascript,您可以轻松创建 drop_bad.js 脚本来删除数据库:
创建 drop_bad.js :
use bad;
db.dropDatabase();
在终端中运行1命令以使用mongo shell来执行脚本:
mongo < drop_bad.js
答案 11 :(得分:3)
尽管有多种方法,但最好的方法(最有效和最简单)是使用db.dropDatabase()
答案 12 :(得分:1)
令人惊讶的是我们还没有看到这种变化。这样可以最大程度地减少命令行上的额外参数,并明确显示将DB切换到FOO
然后删除的情况:
$ mongo --host "mongodb://machine:port" --eval 'db.getSiblingDB("FOO").dropDatabase();'
答案 13 :(得分:0)
在命令提示符中,首先使用以下命令连接到mongodb:
mongo -h [host-name]:[port:number] -d [dbname] -u [username] -p [password]
您将使用<dbname>
访问数据库。
运行以下命令以删除整个数据库:
db.dropDatabase()
答案 14 :(得分:0)
登录到mongoDB命令行: 并键入以下命令。 使用“ YOUR_DATABASE_NAME”; db.dropDatabase();
答案 15 :(得分:0)
一个划线员遥控器从mongo数据库中删除所有集合
注意必须使用--host,(-h是mongo命令的帮助),并且-d不是选项,请在密码后选择db和命令。
composer require
答案 16 :(得分:0)
使用python拖放MongoDB数据库:
import argparse
import pymongo
if __name__ == "__main__":
"""
Drop a Database.
"""
parser = argparse.ArgumentParser()
parser.add_argument("--host", default='mongodb://localhost:27017',
help="mongodb URI [default: %(default)s]")
parser.add_argument("--database", default=None,
help="database name: %(default)s]")
args = parser.parse_args()
client = pymongo.MongoClient(host=args.host)
if args.database in client.list_database_names():
client.drop_database(args.database)
print(f"Dropped: '{args.database}'")
else:
print(f"Database '{args.database}' does not exist")
答案 17 :(得分:0)
打开一个终端并输入:
mongo
以下命令应显示列出的数据库:
show dbs
/* the <dbname> is the database you'd like to drop */
use <dbname>
/* the below command will delete the database */
db.dropDatabase()
以下应该是终端中的输出:
{
"dropped": "<dbname>",
"ok": 1
}
答案 18 :(得分:-1)
使用mongo shell中的以下命令删除db
使用; db.dropDatabase();
答案 19 :(得分:-1)
db 将显示当前数据库名称 类型: db.dropDatabase();
1-使用' use '关键字选择要删除的数据库。
2-然后输入 db.dropDatabase();