MongoDB简介
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.
在高负载的情况下,添加更多的节点,可以保证服务器性能。
MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
使用docker安装MongoDB
搜索mongo
docker search mongo
拉取mongo
docker pull mongo
查看本地镜像
docker images
启动容器【就是安装,-v后面的参数表示把数据文件挂载到宿主机的路径,-p把mongo端口映射到宿主机的指定端口,–auth表示连接mongodb需要授权
- 这里把桌面的lisa文件夹与容器下的data/db文件夹进行绑定
docker run -p 27017:27017 -v /Users/lisa/Desktop/lisa:/data/db -d mongo
因为默认的MongoDB端口号为27017,当你要开启多个MongoDB容器时,这个前面的27017可以修改为其他的端口号。
查看运行中的容器
docker ps
进入mongo【以 admin 用户身份进入mongo】
docker exec -it contain-id mongo admin
contain-id :容器的id
或者使用
docker exec -it contain-id /bin/bash
然后在容器内部输入
mongo admin
也可以进入MongoDB
创建一个 admin 管理员账号
db.createUser({ user: 'admin', pwd: '密码', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
对 admin 进行身份认证
db.auth("admin","密码");
介绍一个可视化mongdb的工具 robo 3T
用工具连接mongo【Robo】
https://robomongo.org/download
在docker容器运行中打开robo 3t
点击create 创建连接,我一共启动两个容器分别对应27017和27018端口
对27018容器设置用户后再robo 3t的Authentication 中填入相应的用户名和密码
之后点击save,回到主界面点击connect
连接之后在创建了用户的那个admin里的users文件夹下会显示用户
来源:CSDN
作者:Amnesia�
链接:https://blog.csdn.net/qq_44242030/article/details/104750874