MongoDB 安装使用教程

一、MongoDB 简介

MongoDB 是一个高性能、开源的 NoSQL 文档型数据库,使用 BSON(二进制 JSON)格式存储数据。适合存储大规模、高并发的非结构化数据,常用于大数据、日志存储、微服务架构中。

二、下载安装

2.1 官网下载

访问 MongoDB 官方下载页 选择对应系统版本下载 Community Server。


2.2 Windows 安装步骤

  1. 下载 .msi 安装包并运行。
  2. 选择 "Complete" 完整安装。
  3. 选择是否安装 MongoDB Compass(可视化工具)。
  4. 安装完成后将 MongoDB 安装目录(如 C:\Program Files\MongoDB\Server\6.0\bin)添加到系统环境变量 Path 中。
  5. 创建数据目录:
bash 复制代码
mkdir C:\data\db
  1. 启动服务:
bash 复制代码
mongod

2.3 macOS 安装步骤

使用 Homebrew 安装:

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

2.4 Linux 安装步骤(以 Ubuntu 为例)

bash 复制代码
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
sudo apt update
sudo apt install -y mongodb-org
sudo systemctl start mongod
sudo systemctl enable mongod

三、基本使用

3.1 启动 MongoDB 服务

bash 复制代码
mongod

或者使用后台启动:

bash 复制代码
mongod --dbpath "你的数据库目录路径" --fork --logpath "日志文件路径"

3.2 启动 MongoDB Shell

bash 复制代码
mongo

3.3 常用操作示例

javascript 复制代码
// 查看当前数据库
db

// 创建/切换数据库
use mydb

// 插入数据
db.users.insert({name: "Alice", age: 25})

// 查询数据
db.users.find()

// 更新数据
db.users.update({name: "Alice"}, {$set: {age: 26}})

// 删除数据
db.users.remove({name: "Alice"})

四、图形化工具推荐

  • MongoDB Compass:官方图形化界面,适合初学者使用。
  • NoSQLBooster:更专业的客户端,支持 IntelliSense。
  • Studio 3T:企业级管理工具,功能强大。

五、远程访问配置

  1. 修改配置文件 /etc/mongod.conf:
yaml 复制代码
net:
  port: 27017
  bindIp: 0.0.0.0
  1. 重启 MongoDB:
bash 复制代码
sudo systemctl restart mongod
  1. 创建用户及权限:
javascript 复制代码
use admin
db.createUser({
  user: "admin",
  pwd: "password123",
  roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})

六、常见问题

Q1: MongoDB 启动报错 "data directory not found"

请确保 --dbpath 指定的目录存在,并且有权限。

Q2: MongoDB 无法远程连接

  • 确保 bindIp 配置为 0.0.0.0
  • 防火墙放行端口 27017
  • 用户权限已配置正确

七、参考链接


本文由"小奇Java面试"原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

相关推荐
仍然.16 小时前
Redis---缓存
数据库·redis·缓存
Aloudata16 小时前
LookML 语义模型 vs 企业级独立语义层:BI 建模语言能否承担企业语义底座?
数据库·人工智能·数据分析·数据资产·dataagent
细嗅蔷薇@17 小时前
排序和分⻚(order by 、limit)
数据库·oracle
wdfk_prog17 小时前
LWIP教程 09:从 `tcp_slowtmr()` 到 Fast Retransmit——TCP 超时重传与重复 ACK
服务器·网络·数据库·网络协议·tcp/ip
逸模17 小时前
BIM在连锁餐饮装修中的应用:不只是画三维图
大数据·数据库·人工智能·物联网·建模
梦想平凡17 小时前
棋牌游戏技术实战(五):从对局事件重新执行规则,核对棋盘和最终状态
数据库·游戏·oracle
白露与泡影17 小时前
Oracle AI Database 26ai RAC 部署步骤、关键命令与一键脚本
数据库·人工智能·oracle
天天喝旺仔18 小时前
MySQL 索引原理与慢查询优化实战:从 B+ 树到执行计划调优
数据库·sql·mysql·性能优化
liulilittle18 小时前
Linux 下 select 测试函数
linux·服务器·网络·数据库·c++·select·c
DongQiShanRen18 小时前
玄龙(上):TICK 主循环——意识心跳怎么跳
linux·jvm·数据库·人工智能·数据挖掘·rust