node.js - 如何使用 node.js 和 MongoDB Atlas 删除数据库?
问题描述
我是 MongoDB 和 node.js 的新手,我想知道如何删除数据库。我找了找,发现是用dropDatabase()
方法搞定的。问题是它显示了一个MongoError: user is not allowed to do action [dropDatabase] on [test.]
. 我也搜索了这个错误,我发现的答案是用户需要注册为Data Access Read Write
. 但是,我在 mongo atlas 中的用户已注册Project Owner
为答案所述。我删除Project Owner
了它仍然显示错误。
MongoClient.connect(uri, { useNewUrlParser: true }, (err, client)=>{
if(err) throw err;
console.log("Connected...");
const db = client.db("test");
db.dropDatabase();
console.log("asdfghj")
client.close();
});
事实上,每当我搜索修复在搜索栏中输入的问题时,即使我正在输入Mongo atlas
,结果也一样。所以我不知道是否可以在 mongo atlas 中删除数据库。先感谢您。How to delete cluster in mongo atlas
delete database in mongo atlas
解决方案
看起来您将“Atlas Project”安全性与“Database Access”混淆了。
如果您正在寻找从 Atlas 集群中删除数据库,则用于登录 Mongo 客户端的“数据库用户”需要在相关数据库中具有“dbAdmin”角色。然后,您可以通过 Mongo 客户端以编程方式使用您的数据库用户执行相关操作。
管理数据库用户和安全角色可以参考https://docs.atlas.mongodb.com/security-add-mongodb-users/。
推荐阅读
- yii - 如何在 Yii2 Eloquent 中对同一张表进行子查询
- android - Android Web 查看器在启动时加载外部 URL
- html - 防止宽表拉伸 flexbox 项和容器,改为使该表可滚动
- asp.net - MVC 一对多用户公司和通知
- c# - 在 asp.net MVC 5 中使用 SignalR 上传图像
- asp.net-core-2.0 - 在 asp.net core 2 中流式传输视频文件
- html - HTML 表单,如何垂直对齐和居中输入字段?
- python - 从flask-admin的模型视图中摆脱/隐藏/删除“选择”视图
- amazon-ec2 - 每 2 或 3 天通过 Ec2 1/2 检查
- javascript - SyntaxError:预期的表达式,在字符 2 处得到 '}'