我有一个经过身份验证的用户,具有删除数据库所需的所有权限。我想从shell中删除数据库并尝试执行以下命令
mongo -uuser -ppass newdb --eval "db.dropDatabase();"
我得到了以下信息: -
MongoDB shell version: 2.4.9
connecting to: newdb
[object Object]
这就是我没有错误也没有结果。数据库仍然存在,包含所有值。
答案 0 :(得分:1)
您的命令应该有效
mongo -uuser -ppass newdb --eval "db.dropDatabase();"
如果您在此之后使用
访问mongomongo -uuser -ppass newdb
数据库再次创建但是为空,所以当你说:
数据库仍然存在,包含所有值。
你确定里面有所有藏品吗?
要检查是否已删除,您可以执行以下操作:
mongo -uuser -ppass
> show dbs
不应出现“newdb”。
我用Mongo 2.4.2进行了测试。
答案 1 :(得分:0)
你可以试试这个:
mongo -u USER -p PASS --eval "db=db.getSiblingDB('DB_NAME');db.dropDatabase();"
参考: http://docs.mongodb.org/manual/tutorial/write-scripts-for-the-mongo-shell/