目录
参考
MongoDB 6.0版安装教程及安装MongoDB提示权限不足的解决方法(超详细哦)
一、官网
官网地址:https://www.mongodb.com/try/download/community
二、介绍
MongoDB的版本偶数版本为稳定版,基数版本为开发板
MongoDB对于32位系统支持不佳,所以3.2版本以后没有再对32位系统的支持
角色
- Read:允许用户读取指定数据库
- readWrite:允许用户读写指定数据库
- dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
- userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
- clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
- readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
- readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
- userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
- dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
- root:只在admin数据库中可用。超级账号,超级权限
三、docker安装
1、拉去镜像
# 最新版
docker pull mongo:latest
# 指定版本
docker pull mongo:4.4.17
2、创建容器
# 运行安装命令(安装mongoDB容器)
docker run --name mongodb -p 27017:27017 -d mongo --auth
# 需要验证
docker run -d \
--name mongodb \
--restart always \
--privileged \
-p 27017:27017 \
-v /usr/local/mongodb/data:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
mongo:4.4.17 mongod --auth
docker run -d \
--name mongodb \
--privileged \
-p 27017:27017 \
-v /usr/local/mongodb/data:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
mongo:4.4.17 mongod --auth
-d: 后台运行容器;
–name: 指定容器名;
-p: 指定服务运行的端口;
-v: 映射目录或文件;
–privileged 拥有真正的root权限
–restart=always Docker服务重启容器也启动
-e MONGO_INITDB_ROOT_USERNAME=admin 指定用户名
-e MONGO_INITDB_ROOT_PASSWORD=123456 指定密码
mongod --auth :容器默认启动命令是mongod,我们认证需要修改启动命为mongod --auth开启认证
3、用户管理
添加用户
# 以admin身份进入mongoDB
docker exec -it (docker ps 镜像id) mongo admin
# 创建一个admin账号
db.createUser({ user: 'root', pwd: 'root', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
# 身份认证
db.auth("root","root");
# 新建数据库
use iot
# 创建 用户、密码和数据库:
db.createUser({ user: 'iot_admin', pwd: 'iot_admin', roles: [ { role: "dbAdmin", db: "iot" },{ role: "readWrite", db: "iot" } ] });
exit
删除用户
db.system.users.remove({user:"iot_admin"})
db.dropUser (“admin”)
db.dropAllUser ()
4、查看信息
[root@localhost mongodb]# docker exec -it mongodb bash
root@ce90018683a8:/# mongo --version
四、客户端链接
使用Robo Studio 3T连接mongoDB
进入Studio 3T官网下载Studio 3T:https://studio3t.com/download/
下载:https://download.studio3t.com/studio-3t/windows/2022.9.0/studio-3t-x64.zip
参考:Robo 3T 使用教程
idea使用mongoDB plugin插件
参考:idea中安装mongodb插件
IntelliJ IDEA 配置MongoDB插件、连接MongoDB
使用服务端webadminmongo创建
docker run -itd --name mongoadmin --network mynet -p 8082:8082 -e HOST=0.0.0.0 -e PORT=8082 mrvautin/adminmongo
新建一个连接,这里我们链接那里直接填mongodb://localhost:27017即可
mongodb://admin:123456@192.168.0.44:27017