前段 网站建设实例,问卷调查网站哪个好,成都广告公司工资一般多少,网站建设找云尚网络什么是MongoDB? MongoDB 是一个开源的、面向文档的 NoSQL 数据库管理系统#xff0c;它以高性能、灵活的数据存储方式而闻名。与传统的关系型数据库不同#xff0c;MongoDB 采用了一种称为 BSON#xff08;Binary JSON#xff09;的二进制 JSON 格式来存储数据。它是一种非… 什么是MongoDB? MongoDB 是一个开源的、面向文档的 NoSQL 数据库管理系统它以高性能、灵活的数据存储方式而闻名。与传统的关系型数据库不同MongoDB 采用了一种称为 BSONBinary JSON的二进制 JSON 格式来存储数据。它是一种非常适合存储大量非结构化或半结构化数据的数据库解决方案。 以下是 MongoDB 的一些关键特点 面向文档 MongoDB 以文档的方式存储数据每个文档是一个自包含的数据单元类似于 JSON 格式。这允许您在单个文档中存储多种不同类型的数据而无需严格的表结构。 灵活的数据模型 MongoDB的灵活模式允许您在同一集合类似于关系型数据库中的表中存储不同结构的文档这在面对多变的数据情况下非常有用。 水平可扩展性 MongoDB 能够在多台服务器上进行分布式部署并能够水平扩展以处理大量数据和高并发请求。 查询语言 MongoDB 提供了强大的查询语言和丰富的查询操作符使您能够灵活地检索和处理数据。 索引支持 MongoDB 支持多种类型的索引以加快数据检索速度。 高性能 MongoDB 的设计和优化使其能够在高负载情况下提供快速的读写操作。 开源和社区支持 MongoDB 是开源项目拥有活跃的社区提供了大量的文档、教程和支持资源。 可扩展性 MongoDB 可以很容易地扩展以适应不断增长的数据需求。 MongoDB 在许多应用场景中都表现出色特别是在需要处理大量半结构化数据、快速迭代开发以及需要灵活模式的应用程序中。它常被用于 Web 应用程序、移动应用程序、物联网设备、日志分析等各种领域。由于 MongoDB 的特性它在许多情况下可以作为关系型数据库的替代方案。 1.拉取mongodb镜像
docker pull mongo2.创建文件夹
mkdir -p /home/mongo/conf/
mkdir -p /home/mongo/data/
mkdir -p /home/mongo/logs/3.新增mongod.conf文件 cd /home/mongo/conf vi mongod.conf# 数据库文件存储位置
dbpath /data/db
# log文件存储位置
logpath /data/log/mongod.log
# 使用追加的方式写日志
logappend true
# 是否以守护进程方式运行
# fork true
# 全部ip可以访问
bind_ip 0.0.0.0
# 端口号
port 27017
# 是否启用认证
auth true
# 设置oplog的大小(MB)
oplogSize20484.新增mongod.log文件
cd /home/mongo/logs/ vi mongod.log##log文件不需要内容
chmod 777 mongod.log 5.docker容器构建以及启动mongodb
cd /
docker run -it \--name mongodb \--restartalways \--privileged \-p 27017:27017 \-v /home/mongo/data:/data/db \-v /home/mongo/conf:/data/configdb \-v /home/mongo/logs:/data/log/ \-d mongo:latest \-f /data/configdb/mongod.conf6.进入容器创建账号密码
##进入容器##
docker exec -it mongodb /bin/bash##进入mongodb shell##
mongosh admin##创建账号/密码##
db.createUser({ user: admin, pwd: 123, roles: [ { role: userAdminAnyDatabase, db: admin } ] });此处需勾选, 否则可能会出现看不到数据库表