在阿里云上的Docker中安装Mongodb及基本操作

1 安装

1.1 拉取Mongo镜像

docker pull mongo

在这里插入图片描述

1.2 确认拉取成功

在这里插入图片描述

1.3 启动mongodb

先创建一个目录用来挂在mongo的数据目录
在这里插入图片描述
启动mongodb

docker run -p 27017:27017 --name mymongo -v /usr/local/docker/mongo_data:/data/db --restart=always -d mongo

在这里插入图片描述补充说明:
–restart=always docker重启后容器也自动重启,如果没有加
可以用以下命令

docker container update --restart=always 容器名字

1.4 测试

docker ps 查看
在这里插入图片描述

2 基本操作

进入容器内查看

 docker exec -it 85d0609604b4 bash

在这里插入图片描述

2.1 查看mongodb版本

mongo --version

在这里插入图片描述

2.2 登陆mongo

mongo

在这里插入图片描述

2.3 数据库相关

2.3.1 查看数据库

show dbs

在这里插入图片描述

2.3.2 创建数据库

语法:use 数据库名

use blog

在这里插入图片描述
说明:此时show dbs还是看不到数据库名字的,只有插入文档后,才能看得到

2.3.3 删除数据库

语法:
use 待删除数据库名字
db.dropDatabase()

db.dropDatabase()

在这里插入图片描述

2.3.4 修改数据库名字

4.0版本以下

db.copyDatabase('old_name', 'new_name'); 
use old_name 
db.dropDatabase();

2.4 集合/表相关

2.4.1 创建集合

语法: db.createCollection(“集合名字”)

 db.createCollection("bl_collection")

在这里插入图片描述

2.4.2 查看集合

show collections
或者
show tables

在这里插入图片描述

2.4.3 更新集合

语法:db.旧集合名字.renameCollection(“新集合名字”)

db.bl_collection.renameCollection("bl_collection_new")

在这里插入图片描述

2.4.4 删除集合

语法:db.集合名字.drop()

db.bl_collection_new.drop()

在这里插入图片描述

2.5 文档/数据记录相关

2.5.1 插入文档

语法:db.集合名字.insert(文档数据)

db.bl_collection.insert({
	commentContent: '我是评论的内容',
	commentUser: NumberInt(123456),
	commentBlog: '1301794986045005824 ',
	commentGood: NumberInt(0),
	createdTime: '2020-09-21 15:30:30'
})

在这里插入图片描述
补充:只有插入文档后,才能看到数据库名字
在这里插入图片描述

2.5.2 查看文档

我们再插入两条数据方便进行测试

db.bl_collection.insert({
	commentContent: '我是评论的内容2',
	commentUser: NumberInt(222222),
	commentBlog: '1301794986045005825 ',
	commentGood: NumberInt(1),
	createdTime: '2020-09-21 15:30:31'
})
db.bl_collection.insert({
	commentContent: '我是评论的内容3',
	commentUser: NumberInt(333333),
	commentBlog: '1301794986045005826 ',
	commentGood: NumberInt(2),
	createdTime: '2020-09-21 15:30:32'
})

在这里插入图片描述

a) 查看所有文档

语法:db.集合名.find()

db.bl_collection.find()

在这里插入图片描述

b) 简洁方式查看

语法:db.集合名.find().pretty()

db.bl_collection.find().pretty()

在这里插入图片描述

c) 限制输出的文档数

语法:db.集合名.find().pretty().limit(数字)

db.bl_collection.find().pretty().limit(2)

在这里插入图片描述

d) 查找指定记录
db.bl_collection.find({
	"commentGood": 2
}).pretty()

db.bl_collection.find({
	commentGood: 2
}).pretty()

在这里插入图片描述此处发现commentGoods加不加引号都一样
在这里插入图片描述

e) and查询
db.bl_collection.find({
	"commentGood": 2,
	"commentUser": 333333,
}).pretty()

在这里插入图片描述或者

db.bl_collection.find({
	$and: [
		{"commentGood": 2},
		{"commentUser": 333333}
	]
}).pretty()

在这里插入图片描述

f) or查询

语法

db.col.find(
   {
      $or: [
         {key1: value1}, {key2:value2}
      ]
   }
).pretty()
db.bl_collection.find({
	$or: [
		{"commentGood": 2},
		{"commentUser": 222222}
	]
}).pretty()

在这里插入图片描述

g) 条件查询
  • (>) 大于 - $gt
  • (<) 小于 - $lt
  • (>=) 大于等于 - $gte
  • (<= ) 小于等于 - $lte

以$gt为例,查询点赞数 commentGood > 1的数据

db.bl_collection.find({
	"commentGood": {$gt: 1}
}).pretty()

在这里插入图片描述

h) 模糊查询
db.bl_collection.find({
	"commentContent": {$regex: /内容3/}
}).pretty()

在这里插入图片描述

2.5.3 修改文档

语法:db.集合名.update(查询条件, {$set: 要更新的数据})

db.bl_collection.update(
	{"commentGood": 2},
	{
		$set: {
			"commentGood": 888,
			"commentContent": "我是评论的内容"
		}
	}
)

在这里插入图片描述查看结果确认

在这里插入图片描述

2.5.4 删除文档

语法:db.集合名.remove(查询条件)

db.bl_collection.remove({commentUser:333333})

在这里插入图片描述
确认删除成功
在这里插入图片描述补充说明:删除必须条件query查询条件,否则会报错
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值