node.js 实战——mongoDB

MongoDB

MongoDB 简介

MongoDB 是一种基于文档型 (document-oriented) 的 NoSQL 数据库,使用类 JSON 的 BSON 格式存储数据,自然支持复杂数据结构。它特别适合需要快速变化、大量数据处理和高应用扩展性的场景。

MongoDB 特性:

  • 无法表、无结构;自由结构定义
  • 支持快速查询和复杂查询语句
  • 支持高性能完整的缓存机制
  • 大规模分片与副本集综合高可用性

MongoDB 架构说明

MongoDB 使用分片(Sharding)和副本集(Replica Set)的方式,保证高性能和高可用性。

MongoDB 架构图

组件说明:

  • Client:客户端,发起数据操作请求
  • Mongos:分片路由器,分发请求至相应分片
  • Shard:分片节点,存储实际数据
  • Primary / Secondary:主节点和备份节点,维持数据高可用性
  • Config Server:管理分片配置和元数据

✅MongoDB在32位系统的支持情况

  • MongoDB 3.2 及之前版本:
    支持 32 位系统(Windows、Linux)。
  • MongoDB 3.4 开始(2016年后):
    官方彻底停止支持 32 位系统,只支持 64 位系统。

📌 注意

即使是旧版本(比如 3.0 或更早)在 32 位系统上跑,也有严重限制:

  • 单个数据库最大只有 2GB。
  • 适合做开发测试,不适合生产环境。
  • 运行性能非常受限。

官方明确建议:

"在 32 位平台上部署 MongoDB 只推荐用于开发、学习,不适用于生产用途。"

🛠 如果你必须在 32 位系统上用 MongoDB

你只能安装 MongoDB 3.2 或更低版本,比如:

  • MongoDB 2.6.x
  • MongoDB 3.0.x

并且,需要自己找老版本下载:

  • 官方归档下载页面:MongoDB Download Center --- Archive

MongoDB 在 Windows 上安装

MongoDB的版本偶数版本为稳定版,奇数版本为开发版

下载 MongoDB

访问 MongoDB 官网下载页面,选择 Windows 版本,下载 MSI 安装包。

运行安装程序

  • 双击进行安装,按照默认配置点击 "Complete"
  • 选择 "Install MongoDB as a Service" (默认)
  • 设置数据文件夹:
    • 数据路径:C:\Program Files\MongoDB\Server\6.0\data\db
    • 日志路径:C:\Program Files\MongoDB\Server\6.0\log\mongod.log

配置环境变量

  • 添加路径:
    • 如:C:\Program Files\MongoDB\Server\6.0\bin

启动 MongoDB 服务

打开 CMD:

bash 复制代码
net start MongoDB

或手动启动 mongod:

bash 复制代码
mongod --dbpath="C:\\Program Files\\MongoDB\\Server\\6.0\\data\\db"

MongoDB 在 macOS 上安装

使用 Homebrew 安装

先确认 Homebrew 已安装:

bash 复制代码
brew --version

安装 MongoDB

注:MongoDB 没有直接上 Homebrew Core,需要加入 Tap

bash 复制代码
brew tap mongodb/brew
brew install mongodb-community@6.0

启动服务

bash 复制代码
brew services start mongodb-community@6.0

手动启动

如果不使用服务,手动启动:

bash 复制代码
mongod --config /usr/local/etc/mongod.conf

验证 MongoDB 是否正常运行

打开第二个窗口:

bash 复制代码
mongo

显示进入终端即为成功!

相关推荐
这个DBA有点耶5 小时前
2026年分布式数据库有哪些主流选择?先评估这5个维度再决定
数据库·分布式·dba
这个DBA有点耶8 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
胡写代码8 小时前
数据库审计字段,别再每张表各写一套了——我统一成这 6 个字段
数据库
SelectDB12 小时前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent
用户6724653660512 小时前
Node 守护进程日志转发踩坑记:stdio 管道、UTF-8 截断,和一个字符串按值传参的故事
node.js
ClouGence12 小时前
开源数据库管理工具 CloudDM 4.2.0 发布,新增 GoldenDB、KingbaseES 等数据源
数据库·dba·devops
发霉的馒头13 小时前
ORA-00845: MEMORY_TARGET not supported on this system的解决方法
数据库
coderCN13 小时前
Nodejs express+knex(ORM框架)
前端·node.js
coderCN13 小时前
Nodejs mysql2+express+yaml
node.js
烬羽13 小时前
我把"时间胶囊"部署上腾讯云宝塔,跨域从根源消失了
nginx·node.js·全栈