使用docker安装使用 mongo

1.获取mongo镜像

docker pull mongo

2.启动mongo

docker run --name mongo -p 27017:27017 -v /data/mongo:/data/db -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin -d mongo

参数说明:

-d     后台启动
--name 自定义名称
-p     映射端口
-v     挂载数据目录和配置目录
-e 环境变量

注:

  运行时加上 环境变量MONGO_INITDB_ROOT_USERNAME 和MONGO_INITDB_ROOT_PASSWORD 会自动启动授权

查看状态

 3.连接

登录到mongo的容器里

docker exec -it mongo bash

使用交互的形式, 在名字为 `mongodb` 的容器中实行 `bash`这个命令

连接mongo

 mongo -u admin -p admin

4.使用

(1)在容器中连接

  新建数据库abc,添加用户baby,密码123456,授权readWrite,在abc上添加一条数据

复制代码
> use abc;
switched to db abc
>  db.createUser({user:"baby",pwd:"123456",roles:["readWrite"]})
Successfully added user: { "user" : "baby", "roles" : [ "readWrite" ] }
> show users
{
        "_id" : "abc.baby",
        "userId" : UUID("bde1abcc-e351-4e16-95c7-786e2f9a7f60"),
        "user" : "baby",
        "db" : "abc",
        "roles" : [
                {
                        "role" : "readWrite",
                        "db" : "abc"
                }
        ],
        "mechanisms" : [
                "SCRAM-SHA-1",
                "SCRAM-SHA-256"
        ]
}
> show databases
admin   0.000GB
config  0.000GB
local   0.000GB
> db.abc.insert({"name":"joe","age":"20"})
WriteResult({ "nInserted" : 1 })
> show databases
abc     0.000GB
admin   0.000GB
config  0.000GB
local   0.000GB
> db.abc.find({"name":"joe"})
{ "_id" : ObjectId("5e8d5ea9b116039555a29399"), "name" : "joe", "age" : "20" }
复制代码

(2)在windows上连接

mongo  宿主机ip/数据库  -u用户名 -p密码

连接并查询数据

复制代码
D:\mongodb\bin>mongo 192.168.99.100/abc -u baby -p 123456
MongoDB shell version v4.2.0
connecting to: mongodb://192.168.99.100:27017/abc?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("c1b84b1a-b94c-48d1-ac87-0c061d63a62e") }
MongoDB server version: 4.2.5
> show databases
abc  0.000GB
> db.abc.find({"name":"joe"})
{ "_id" : ObjectId("5e8d5ea9b116039555a29399"), "name" : "joe", "age" : "20" }
复制代码

 

posted @   慕尘  阅读(1752)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2018-04-08 基于thinkphp的API日志
2016-04-08 查看mysql语句运行时间
点击右上角即可分享
微信分享提示