MongoDB介绍:
一个数据库可以理解成一个文件夹,一张表就是一个collection集合,表内的一行数据就是一个document文档,表中的每一个字段在mongo中被称为一个field域,mongodb只支持单表查询
在mysql中一行数据就是一个订单,在mongodb中一个字典(object)就是一个订单
Mongo支持的角色:
| read | 只读:允许用户读取指定的数据库 |
|---|---|
| readWrite | 读写:允许用户读写指定的数据库 |
| dbAdmin | 数据库管理:允许用户在指定的数据库中执行管理函数,如索引创建,删除,查看,统计或访问system.profile |
| userAdmin | 用户管理:允许用户向system.users集合写入,可以在指定数据库里创建,删除和管理用户 |
| clusterAdmin | 集群管理:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限 |
| readAnyDatabase | 任意库读:只在admin数据库中可用,赋予用户所有数据库的读权限 |
| readWriteAnyDatabase | 任意库读写:只在admin数据库中可用,赋予用户所有数据库的读写权限 |
| userAdminAnyDatabase | 用户管理任意库:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限 |
| dbAdminAnyDatabase | 数据库管理任意库:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限 |
| root | 只在admin数据库中可用,超级账号,超级权限 |
Docker安装MongoDB:
#拉取镜像 [root@db01 ~]#docker pull mongo:4.2.6 #创建一个需要密码登录的mongodb容器 [root@db01 ~]#docker run -d --name mongod -p 27017:27017 mongo:4.2.6 --auth #查看容器的启动时间 [root@db01 ~]#docker container ls #查看日志是否启动完毕 [root@db01 ~]#docker logs mongod -f #进入容器 [root@db01 ~]#docker exec -it mongod /bin/bash
#进入数据库
root@6533ac116da1:/# mongo
MongoDB shell version v4.2.6
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("54789f2f-f3f1-41a6-80d8-99a8d554ef4a") }
MongoDB server version: 4.2.6
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
创建admin管理用户
连上数据库后,我们先创建一个admin用户,用以管理其它用户:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
创建具有读写权限的用户
根据业务需求,创建不用的用户,如下面创建拥有读写权限的用户user:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
认证用户并操作
| 1 2 3 4 5 6 7 8 9 10 |
|
4 两款优秀的可视化工具
通过前面的操作,我们已经建立了用户,并尝试创建了数据库和集合。但通过命令行来操作总是不那么方便,我们需要可视化软件来进行操作。下面将介绍两款优秀的可视化软件,展示如何连接。如何进行CRUD等操作就不一一介绍了,还是比较友好的,容易使用。
4.1 Robo3T
简易版的下载地址:Robo 3T下载-Robo 3T(MongoDB数据库可视化管理助手) V1.3.1官方中文版下载-Win7系统之家
创建连接:

注意下面填的是鉴权数据库,而不是用户的数据库:

操作界面:

4.2 IDEA Mongo Plugin
这个是支持JetBrains全系列软件的插件,IDEA当然也可以安装。
连接设置:
注意下面的User Database是该用户下的数据库,写错了会连不上。

注意下面Auth Database为鉴权的数据库,默认为admin。

操作界面:

总结
本文介绍了通过Docker安装最新版的MongoDB,并通过例子演示了如何运行和创建用户与集合,最后还介绍了两款非常友好的可视化工具,希望能带没有接触过的人入个门吧。
291

被折叠的 条评论
为什么被折叠?



