【笔记】Mongodb安装及角色权限创建

1.官网下载 https://www.mongodb.com/download-center/community

2.安装 

选择自定义安装,修改安装路径,然后一路next就行了

不过有个注意事项,到Install MongoDB  Compass时,一定要取消勾选 Install MongoDB  Compass ,否则要下载Compass工具,会卡在这里,等超久,以前第一次安装时不懂,一路next下去,没取消打勾,装了几个小时(T_T)/~~(T_T)/~~(T_T)/~~

这个Compass工具,可以在安装完后自己另行下载

具体安装步骤如下图:

安装完成目录结构

现在的安装包基本都帮创建了如下几个文件夹:数据库路径(data目录)、日志路径(logs目录)和日志文件(logs/mongo.log文件)

在去服务端查看,发现MongoDB服务已经创建并且正在运行,使用的是bin目录下的 mongod.cfg

 

尝试链接,到浏览器输入127.0.0.1:27017,出现如下页面,说明mongodb启动运行正常

这是msi文件安装完成步骤,安装完成无需配置,可以直接使用

若是使用zip压缩包,安装完后,需要配置创建数据库路径(data目录)、日志路径(logs目录)和日志文件(logs/mongo.log文件),创建完这些文件后,在创建配置文件mongod.conf

启动命令 :使用--config "配置文件路径启动" 

(bin目录下,如已配置环境变量请随意)如 mongod --config "D:\softInstall\MongoDB\mongod.conf"

启动成功不报错后,可去浏览器输入127.0.0.1:27017测试是否链接成功,

也可以新建cmd进入dos测试输入mongo -port 27017 测试是否能链接,如图:

测试链接成功后,安装MongoDB服务

(1)以管理员身份打开cmd

(2)执行安装MongoDB服务:mongod --config "D:\softInstall\MongoDB\mongod.conf" --install --serviceName "MongoDB"

(3)查看服务是否安装成功

(4)启动服务 net start MongoDB

(5)再次测试链接即可

3.创建角色权限

(1)进入cmd链接MongoDB ,mongo -port 27017

(2)创建超级用户:db.createUser({user:"admin",pwd:"admin",roles:[{role:"root",db:"admin"}]})

(3)开启权限认证

这里用的是配置文件,直接在mongod.cfg配置文件中添加

security:
  authorization: enabled

配置文件修改后,重启mongodb服务,

注意以上截图重启服务会报1053错误,无法重启服务,因为mongod.cfg有严格的格式多个空格,少个都不行

上面的错误主要是开头空格多了,没对齐,正确如下

(4)重启服务后,登陆并认证权限

返回1说明认证通过

使用test库,创建test库拥有者

使用compass工具登陆输入该用户名密码,发现新创建的这个用户下,只有test库权限

5.mongodb数据库权限角色

数据库用户角色
       read: 只读数据权限
       readWrite:学些数据权限
数据库管理角色
       dbAdmin:数据库管理员, 在当前db中执行管理操作的权限
       dbOwner: 数据库拥有者,在当前db中执行任意操作
       userADmin:数据库用户管理员, 在当前db中管理user的权限
备份和还原角色
       backup:备份
       restore:还原
跨库角色
       readAnyDatabase: 在所有数据库上都有读取数据的权限
       readWriteAnyDatabase: 在所有数据库上都有读写数据的权限
       userAdminAnyDatabase: 在所有数据库上都有管理user的权限
       dbAdminAnyDatabase: 管理所有数据库的权限
集群管理
       clusterAdmin: 管理机器的最高权限
       clusterManager: 管理和监控集群的权限
       clusterMonitor: 监控集群的权限
       hostManager: 管理Server
超级权限
       root: 超级用户

6.用户创建相关语句

创建用户 db.createUser({user:"username",pwd: "pwd",roles: [ { role: "rolename", db: "dbname" },{ role: "rolename2", db: "dbname2" } ]})
修改密码 db.changeUserPassword('usname','newpwd');
添加角色 db.grantRolesToUser("username", [{ role: "rolename",db:"dbname"}] )
删除权限 db.revokeRolesFromUser("username",[{ role: "rolename",db:"dbname"}])
删除用户 db.dropUser("username")

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值