windows安装mongodb6.x并设置用户名密码的详细过程

寻技术 Windows / MongoDB 2024年01月21日 142

下载

官网下载地址:点击去下载

在这里插入图片描述

安装

在这里插入图片描述

在这里插入图片描述

这工具很好用的,页面美观,设置账号密码也必不可少,推荐勾选。

设置账号密码

利用连接工具设置

在这里插入图片描述

在这里插入图片描述

必须选择一个库

use admin

在这里插入图片描述

设置账号密码

注意:这里创建的时候没有指定库,所以设置完登录之后就可以看到所有库了。

db.createUser({user:"username", pwd:"password", roles:["root"]})

在这里插入图片描述

当然,如果你只想对某一个库设置账号密码,其他的库保持无账号访问,可以这样做:
比如,下边我们直接对admin库设置账号密码

db.createUser({user:"username",pwd:"password",roles:[{role:"root",db:"admin"}]})

角色权限说明

角色类型 权限 权限说明
普通操作角色 read 查询本库的权限。
readWrite 增删改查本库的权限。
管理员操作角色 dbAdmin 数据库对象的管理操作,但没有数据库的读写权限。
userAdmin 在本库下创建用户的权限。
dbOwner 本库所有操作的权限。
实例级别操作角色 readAnyDatabase 查询本实例所有库的权限。
readWriteAnyDatabase 增删改查本例所有库的权限。
userAdminAnyDatabase 在本实例所有库下创建用户的权限。
dbAdminAnyDatabase 本实例所有库的dbAdmin权限。
集群管理员角色 hostManager 数据库对象的管理操作,但没有数据库的读写权限。
clusterMonitor 查询集群和复制集的权限。
clusterManager 管理和监控集群和复制集的权限。
clusterAdmin 集群所有操作的权限。
备份与恢复操作角色 backup 查询本实例所有库的权限。
restore 增删改查本例所有库的权限。
超级角色 root 超级用户权限。

那如果想给其他库也设置账号密码,精准到库登录怎么办呢?

那就分两种情况:
1、一开始设置账号密码的时候就用这个库来设置,就像上边的admin一样;
2、如果一开始没有用你需要的库来设置账号密码,那么就进去之后,直接按照下方的方式来设置对应库的账号密码。
区别在于,第一次设置账号密码是可以设置root,后边在添加用户就不能再设置root权限了
比如这样:db.createUser({user:“username”,pwd:“password”,roles:[{role:“dbOwner”,db:“admin”}]})

所以如果你权限控制不那么严格,那就在一开始没有账号密码的时候,先创建好自己的需要的库,然后再以这个库来设置账号密码,分配root权限,否则,就按照上边所说,创建多用户,多权限控制。

操作用户命令

db.system.users.find()  //查看所有用户
db.system.users.remove({}) //删除所有用户
db.system.users.remove({user:"username"})  //删除指定用户
db.changeUserPassword("username","changepass"); //更改密码(1)
db.updateUser("username",{pwd:"changepass"});//更改密码(2)

用户与密码设置完以后,还需要开启用户、密码验证功能,不然设置了也没用。

配置文件

注意,一定要先设置上边的,否则先改配置文件,mongo就进不去了,第一步就无法操作了。

C:\Program Files\MongoDB\Server\6.0\bin\mongod.cfg
authorization: enabled

在这里插入图片描述

-重启mongo服务

在这里插入图片描述

重新连接

断开

在这里插入图片描述

重新无账号密码连接,发现无法连接了

在这里插入图片描述

填写账号密码连接即可

在这里插入图片描述

在这里插入图片描述

OK!!!

关闭

用微信“扫一扫”