从bash提示符中最简单的方法是什么?


当前回答

您可以先切换到要删除的数据库。然后您可以使用命令dropDatabase()删除相同的。

代码:

>用dbName

>db.dropdataBase()

结果将是:

{ "dropped" : "dbName", "ok" : 1 }

如果要删除数据库中的特定集合,则切换到数据库并输入以下命令。

代码:

>用dbName

db.collection.drop ()

结果将是:

true

如果你想更好地理解MongoDB shell命令,它是 最好始终遵循文档。 文档链接: https://www.mongodb.com/docs/manual/reference/method/#std-label-js-administrative-methods

其他回答

打开另一个终端窗口,执行以下命令,

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仍在使用中,因此此时插入任何输入都将重新初始化数据库。

使用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")

一行远程删除mongo数据库中的所有集合

注意必须使用——host, (-h为mongo命令的help), -d无选项,password后选择db和command。

mongo --host <mongo_host>:<mongo_port> -u <db_user> -p <db_pass> <your_db> --eval "db.dropDatabase()"

很惊讶我们没有看到这种变化。这样可以最小化命令行上的额外参数,并显式地显示DB被切换到FOO,然后被删除:

$ mongo --host "mongodb://machine:port" --eval 'db.getSiblingDB("FOO").dropDatabase();'

打开终端,输入:

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
}