课程名称:Spring Cloud 进阶 Alibaba 微服务体系自媒体实战
课程章节: 第5章 Admin 平台运营管理中心服务
主讲老师: 风间影月
课程内容
引子
不论是mysql或者redis或者es,我们都会使用远程的客户端工具来连接数据库server,那么目前的linux上锁安装的MongoDB就是server端,我们需要有一个客户端来进行可视化的管理,常用的可以使用Navcat来操作,当然使用其他的GUI工具也都行。
GUI 连接 MongoDB
创建连接
填入你的host所在ip,注意需要内网互通
双击连接如果图标可以点亮,说明连接没问题
创建MongoDB用户账号权限
上述的创建连接是以匿名的方式去连接的,这样在公网环境下回很危险,和redis一样,都要创建用户和密码,才能连接到MongoDB,否则暴露在公网环境在忘记关闭端口的情况下会被黑客攻击。
修改mongodb.conf,auth改为true就代表启用授权模式:
重启mongodb
进入到mongodb控制台:
在控制台输入如下命令:
使用admin库,账号再这里创建
use admin
创建用户,账号密码分布为root,root,roles为角色root,代表超级权限
db.createUser({user:"root",pwd:"root",roles:["root"]})
附:更多角色参考如下:
角色名称 | 说明 |
Read | 允许用户读取指定数据库 |
readWrite | 允许用户读写指定数据库 |
dbAdmin | 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile |
userAdmin | 允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户 |
clusterAdmin | 只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限 |
readAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读权限 |
readWriteAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读写权限 |
userAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的userAdmin权限 |
dbAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限 |
root | 只在admin数据库中可用。超级账号,超级权限 |
使用Navcat重新连接
使用密码方式登录,输入root/root,随后即可打开连接
课程收获
1、掌握了Navicat使用MongoDB的操作方式。
2、了解了MongoDB创建用户以及为用户赋权的动作。