docker pull mongo
docker run -p 27017:27017 -v :/data/db --name docker_mongodb -d mongo
在上面的命令中,几个命令参数的详细解释如下:
-p 指定容器的端口映射,mongodb 默认端口为 27017
-v 为设置容器的挂载目录,这里是将即本机中的目录挂载到容器中的/data/db中,作为 mongodb 的存储目录
–name 为设置该容器的名称
-d 设置容器以守护进程方式运行
接下来,我们使用 Robo 3T 图形界面软件尝试打开数据库。
打开 RoBo 3T,选择新建连接,填入相关数据库信息,保存,连接成功如图
简单操作命令
mongodb 有数据库 -> 集合 ->文档(集合相当于关系型数据库的表,文档相当于行)
#选择或者创建数据库
use spitdb
#创建表
db.spit.find()
#插入一条数据
db.spit.insert({content:"最近有点冷",vists:10})
db.spit.insert({_id:"1",content:"拉拉拉拉",vists:10})
db.spit.insert({_id:"2",content:"拉拉sss拉拉",vists:9})
db.spit.insert({_id:"3",content:"3",vists:9})
#根据ID查询
db.spit.find({"_id":"1"})
db.spit.find({vists:10})
#只查一条
db.spit.findOne({vists:10})
#只查两条
db.spit.find({vists:10}).limit(2)
#修改文档
db.spit.update({"_id":"1"},{$set:{vists:NumberInt(20)}})
#删除
db.spit.remove({"_id":ObjectId("5cebe4a26586b926a3f7b8d4")})
#统计总条数
db.spit.count()
db.spit.count({vists:9})
#模糊查询/正则表达式/ /^/以什么开头
db.spit.find({content:/拉/})
#大于 小于 不等于
db.spit.find({vists:{$gt:1}})//大于
db.spit.find({vists:{$gte:9}})//大于等于
db.spit.find({vists:{$lt:10}})//小于
db.spit.find({vists:{$lte:10}})//小于等于
db.spit.find({vists:{$ne:9}})//不等于
#包含与不包含
db.spit.find({"_id":{$in:["1","3"]}})//包含
db.spit.find({"_id":{$nin:["1","3"]}})//不包含
#条件连接
db.spit.find({$and:[{vists:{$gt:9}},{vists:{$lte:20}}]})
db.spit.find({$or:[{vists:{$gt:9}},{vists:{$lte:20}}]})
#列值增长
db.spit.update({"_id":"1"},{$inc:{vists:NumberInt(1)}})