从bash提示符中最简单的方法是什么?
当前回答
你也可以使用"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。
其他回答
最好的方法是从mongodb控制台执行:
> use mydb;
> db.dropDatabase();
或者,您可以停止mongod并从数据目录中删除数据文件,然后重新启动。
提示:您还可以将数据文件移动到子文件夹中,如果您确定不再需要它们,可以删除它们。
一行远程删除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()"
为了确保你放弃了正确的数据库使用
mongo <connection properties> --eval "db.getSiblingDB('dbname').dropDatabase()"
在尝试保存到mongodb时,请参阅身份验证失败以了解问题。
是这样的:
mongo <dbname> --eval "db.dropDatabase()"
关于从命令行编写shell脚本的更多信息,请访问:https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#scripting
使用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")
推荐文章
- 无法连接到服务器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中部分更新一个对象,以便新对象将覆盖/合并现有的一个