文章目录
前言
MongoDB是一个非关系型数据库,它主要的应用场景有这些
- 显示
相比mysql,MongoDB没有事务,索引之类的东西。最小单位是文档。
可能有人说,为什么这个场景我要用mongoDB,mysql同样也能实现。确实,没有说某个场景必须要使用MongoDB而mysql不能实现的,但是对于特定的场景,非重要而量大的数据的处理,MongoDB相对于mysql来说,它有更小的开销和更方便的操作。
一、安装
本文默认你已经安装了docker,如果安装docker不太了解,请查看我这篇文章
-
建立本地数据储存目录
为了防止在容器重启后的数据丢失,需要把mysql、mongoD等数据存储的目录指定到本地目录。这里我们先在本地建好
cmkdir -p /mydata/mongodb/data
-
下载并run镜像,这里使用latest版本
cdocker pull mongo
-
启动镜像
直接运行run命令也可以,docker识别到本地没有mongo镜像会自动去pull
cdocker run -d --name mongo -p 27017:27017 -v/mydata/mongodb/data:/data/db --restart=always mongo --auth
参数详解
命令 描述 例子 --restart
容器启动方式 --restart=always
# 开机启动,失败也会一直重启,一般不用可能,无限重启
;--restart=on-failure:10
: 表示最多重启10次; 立即生效需要重启dockersystemctl restart docker
,否则下次生效--privileged
赋予容器权限 --privileged=true
# 赋予容器与主机一样的权限; 可能带来安全隐患,是容器突破限制影响到主机,可以使用--cap-add
或--device
参数来分别添加必要的capabilities或设备访问权限 -
查看容器是否启动成功
Cdocker ps -a
-
进入容器,增加账户
c#进入容器 docker exec -it mongo /bin/bash #登录mobodb mongo admin #创建一个名为 root,密码为 123456 的用户。 db.createUser({ user:'root',pwd:'123456',roles:[{ role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
-
本地测试是否可以连接
c#尝试使用上面创建的用户信息进行连接。 db.auth('root', '123456') #选择admin库 use admin #创建集合users db.createCollection('users') #插入数据 db.users.insert({"name":"小李","age": NumberInt(33)}) #查看数据 db.users.find()
-
远程使用mongodb管理工具测试是否可以远程连接(navicat mongo)
如果不能远程连接,则可能是端口没有放开
二、使用
CRUD
- 增
- 删
- 改
- 查
三、mongodb常用指令
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。