从bash提示符中最简单的方法是什么?
当前回答
很惊讶我们没有看到这种变化。这样可以最小化命令行上的额外参数,并显式地显示DB被切换到FOO,然后被删除:
$ mongo --host "mongodb://machine:port" --eval 'db.getSiblingDB("FOO").dropDatabase();'
其他回答
尽管有几种方法,但最好的(最有效和最简单的)方法是使用db.dropDatabase()
最好的方法是从mongodb控制台执行:
> use mydb;
> db.dropDatabase();
或者,您可以停止mongod并从数据目录中删除数据文件,然后重新启动。
提示:您还可以将数据文件移动到子文件夹中,如果您确定不再需要它们,可以删除它们。
是这样的:
mongo <dbname> --eval "db.dropDatabase()"
关于从命令行编写shell脚本的更多信息,请访问:https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#scripting
你也可以使用"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。
打开终端,输入:
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
}
推荐文章
- 无法连接到服务器127.0.0.1:27017
- 如何创建数据库的MongoDB转储?
- 如何将MongoDB作为Windows服务运行?
- 如何监听MongoDB集合的变化?
- 如何在猫鼬排序?
- js的Mongoose.js字符串到ObjectId函数
- mongodb中使用ISODate的日期查询似乎无法正常工作
- 如何更新文档数组中的对象(嵌套更新)
- 在猫鼬模式中添加created_at和updated_at字段
- 如何更新mongodb中的多个数组元素
- MongoDB和Mongoose的区别
- MongoDB在v4之前不兼容ACID意味着什么?
- 显示所有集合中的所有内容
- MongoDB:更新一个字段上的每个文档
- 我如何在MongoDB中部分更新一个对象,以便新对象将覆盖/合并现有的一个