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

相关推荐
Lysander.Jovian21 分钟前
Nginx服务2
运维·数据库·nginx
小张同学a.24 分钟前
zabbix企业级监控平台4——分布式监控与grafana数据可视化
linux·运维·数据库·分布式·信息可视化·zabbix·grafana
渣渣盟25 分钟前
当 Redis 写入不再是瓶颈后,Flink 任务的反压可能来自哪里?如何系统性地定位和解决 Flink 反压问题?
数据库·redis·flink
七牛开发者28 分钟前
Codex 实践系列 Vol.04:用 Goal 和 Plan 管住一个长任务
java·数据库·人工智能·github·copilot
仍然.29 分钟前
服务端高并发分布式结构演进之路
大数据·数据库·redis
MC皮蛋侠客35 分钟前
Redis 系列(三):底层实现(一)——对象系统、SDS 与 dict
数据库·redis·缓存
杜子不疼.37 分钟前
不会SQL也能改数据库?我用NocoDB把MySQL变成了表格界面
数据库·sql·mysql
今天AI了吗43 分钟前
AI辅助数据库工具链对比:从SQL优化到架构设计的主流方案评估
数据库·人工智能·sql
蓝鸟19742 小时前
Oracle 19c JSON_OBJECT 完全实战指南|嵌套、多行多列数组合并、空值踩坑、医保报文落地
数据库·oracle·json_arrayagg·多行转json数组·sql实战踩坑·数据库json拼装·json_object
晴天162 小时前
Agent 全栈学习笔记 1-Day14
数据库·笔记·学习