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

相关推荐
IvorySQL4 小时前
PG 日报|新增 VACUUM 全维度统计信息补丁迭代
数据库·人工智能·postgresql·ivorysql
白露与泡影6 小时前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
赵渝强老师8 小时前
【赵渝强老师】使用Oracle可传输的表空间迁移数据
数据库·oracle
IpdataCloud9 小时前
跨区服玩家延迟高怎么办?用IP离线库自动分配到最近服务器
数据库·tcp/ip·github·php·ip
wuqingshun31415910 小时前
MYSQL默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
空中湖10 小时前
电池简史(五):极限之梦与终章——锂硫、锂空气、量子电池,以及你该知道的电池投资与生活指南
数据库·程序人生
蓝胖子酱11 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库
snow@li12 小时前
Redis:数据库语法速查表 / 全景梳理
数据库·redis·缓存
Devlive 开源社区12 小时前
Nebula 1.6.0 发布:跨区域桶自动路由、秒传、文本/PDF 预览一次到位
数据库·sql
这个DBA有点耶12 小时前
导个数据中文全变问号?字符集这事儿真没那么简单
数据库·mysql·代码规范