CentOS8 安装MongoDB6
添加源:/etc/yum.repos.d/mongodb-org-6.0.repo
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
安装MongoDB
yum install mongodb-org
修改配置文件 /etc/mongod.conf
启动:systemctl start mongod
——————————————————————–
修改密码并开始密码认证
1.修改 /etc/mongod.conf 配置文件
找到:
security:
authorization: enabled
修改:
#security:
# authorization: enabled
2.重启mongo
systemctl restart mongod
3.进入mongodb,并进入管理员,删除原管理员
use admin
db.system.users.find()
db.system.users.remove({})
4.重置密码
db.createUser({user:"用户名",pwd:"密码",roles:["root"]})
db.createUser({user:"username",pwd:"password",roles:[{role:"dbOwner",db:"database"}]})
5.打开密码(root)认证,修改 /etc/mongod.conf 配置文件
找到:
#security:
# authorization: enabled
修改:
security:
authorization: enabled
6.重启mongo
systemctl restart mongod
MongoDB 中内置角色说明:
read:提供读取所有非系统的集合(数据库)
readWrite:提供读写所有非系统的集合(数据库)和读取所有角色的所有权限
dbAdmin:提供执行管理任务的功能,例如与架构相关的任务,索引编制,收集统计信息。此角色不授予用户和角色管理权限。
dbOwner:提供对数据库执行任何管理操作的功能。此角色组合了readWrite,dbAdmin 和 userAdmin 角色授予的权限。
userAdmin :提供在当前数据库上创建和修改角色和用户的功能。由于 userAdmin 角色允许用户向任何用户(包括他们自己)授予任何权限,因此该角色还间接提供对数据库的超级用户访问权限,或者,如果作用于管理数据库,则提供对群集的访问权限。
clusterAdmin :提供最佳的集群管理访问。此角色组合了 clusterManager,clusterMonitor 和 hostManager 角色授予的权限。此外,该角色还提供了 dropDatabase 操作。
readAnyDatabase :仅在 admin 数据库中使用,提供所有数据库的读权限。
readWriteAnyDatabase :仅在 admin 数据库中使用,提供所有数据库的读写权限
userAdminAnyDatabase :仅在 admin 数据库中使用,提供与 userAdmin 相同的用户管理操作访问权限,允许用户向任何用户(包括他们自己)授予任何权限,因此该角色还间接提供超级用户访问权限。
dbAdminAnyDatabase :仅在 admin 数据库中使用,提供与 dbAdmin 相同的数据库管理操作访问权限,该角色还在整个群集上提供 listDatabases 操作。
root:仅在 admin 数据库中使用,提供超级权限