基于docker 初学 MongoDb 学习笔记

MongoDB/NoSQL
411
0
0
2022-04-11

创建容器

# 拉取镜像
docker pull mongo 

# 创建容器
# 定义容器名称 --name  my-mongo
# 宿主机端口 27018 与容器端口 27017 映射绑定 -p 27018:27017
# -d 后台运行容器,并返回容器id
# 如果加需要验证就加--auth,不需要验证,就去掉。默认mongodb是不使用用户认证
docker run --name  my-mongo  -p 27018:27017  -d mongo --auth

进入容器

docker exec -it 容器id /bin/bash

mongo
use admin
db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]})   //创建用户,此用户创建成功,则后续操作都需要用户认证
exit

或者直接进入admin

docker exec -it ly-mongo mongo admin

db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]})   //创建用户,此用户创建成功,则后续操作都需要用户认证
exit

测试

# 在容器中执行
# mongo  宿主机ip/admin  -uroot -p

root@ae8c7278eab6:/# mongo  192.168.136.148:27018/admin  -uroot -p
MongoDB shell version v4.4.5
Enter password: 

输入之前设置的密码 root

MongoDb 学习笔记

哦了,测试环境就这样了,可以开始练习mongodb的相关命令了

在学习mongodb之前相关的概念有必要理解以下,毕竟在mongodb中没有表这个概念

SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 table joins 表连接,MongoDB不支持 primary key primary key 主键,MongoDB自动将_id字段设置为主键

相关操作命令

# 选择(创建)数据库,在数据库没有数据之前并没有实际创建数据库
use test_db

# 显示数据库列表
show dbs

# 创建集合,集合名 user
db.createCollection('user')

# 在集合中添加文档,即添加了个 json 数据 {'ab':'xyz'}
db.user.insert({'ab':'xyz'})

# 添加多个文档
db.user.insert([{'ab':'xyz'},{'11':'22'}])

# 查找文档,查找 字段 ab=xyz 的文档
db.user.find({'ab':'xyz'})

相关事项

笔记就先写到这里,还在学习中,日后再更新