解决Robo 3T连接MongoDB时出现 Error: Failed to execute “listdatabases” command错误的问题

连接centOS上mongoDB时出现如下错误:

浏览器运行http://xx.xxx.xxx.xx:27017/  说明外网可以访问了。

It looks like you are trying to access MongoDB over HTTP on the native driver port。

 说明是数据库为了安全使用Robo 3T连接时还需要使用账号密码验证

所以先创建个用户,也安全一点,在centos上先用mongo连接数据库,然后创建用户和密码

1. 创建管理员用户

use admin
 
db.createUser({user:"admin", pwd: "123456", roles: ["root"]})
 
db.auth("admin", "123456") 

由于admin用户是root超级权限,用这个账户就可以访问所有数据库了。

2. 添加数据库用户

比如自己的数据库叫mall

 

use mall
 
db.createUser({user: "name", pwd: "123456", roles: [{ role: "dbOwner", db: "mall" }]})

dbOwner:表示在当前数据库中可以执行任意操作

如图所示,这样连接就可以成功了。

 

3. 如果还是连接不上,提示如下则是说明Robo 3T的版本太低了,需要换成1.3及以上的版本(Robo 3T-1.3才能支持MongoDB 4.X)

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值