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面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

相关推荐
RestCloud17 分钟前
ETL 不只是数据搬运工:如何实现智能转换与清洗?
数据库·api
lu9up20 分钟前
因表并行引发的血案【故障处理案例】
数据库·oracle·dba
Yeats_Liao1 小时前
物联网平台中的MongoDB(二)性能优化与生产监控
物联网·mongodb·性能优化
qq_356408661 小时前
es通过分片迁移迁移解决磁盘不均匀问题
java·数据库·elasticsearch
武子康2 小时前
Java-122 深入浅出 MySQL CAP理论详解与分布式事务实践:从2PC到3PC与XA模式
java·大数据·数据库·分布式·mysql·性能优化·系统架构
爱考证的小刘2 小时前
阿里云ACA认证[特殊字符]阿里云ACP认证
数据库·阿里云·云计算
Databend2 小时前
基于 Databend 的实时数据汇聚平台建设
数据库
玄尺_0072 小时前
bug:uniCloud报Business Failed, 参数有误retry invoke error
数据库·bug
@CLoudbays_Martin112 小时前
CDN是否能有效检测并且同时防御Ddos 和 CC 攻击?
java·服务器·网络·数据库·git·数据库开发·时序数据库
爱喝水的鱼丶3 小时前
SAP-MM:SAP采购组织全面学习指南:从概念到实战配置图解
运维·开发语言·数据库·学习·sap·mm模块·采购组织