MongoDB 安装与配置

MongoDB 安装与配置

MongoDB 是一个高性能、开源的 NoSQL 数据库,它提供了丰富的查询功能和高可用性。本文将详细讲解 MongoDB 的安装与配置过程。

1. MongoDB 安装

1.1 Windows 平台安装

  1. 下载 MongoDB 安装包

访问 MongoDB 官方下载页面(https://www.mongodb.com/try/download/community ),选择适合的 Windows 版本,并点击下载。

  1. 安装 MongoDB

双击下载好的安装包,启动安装向导。在安装过程中,可以选择"Complete"(完整安装)或"Custom"(自定义安装)模式。如果没有特殊需求,建议选择"Complete"模式。

  1. 配置 MongoDB

安装完成后,需要配置 MongoDB。首先,创建一个用于存储数据的文件夹,例如 C:\data\db。然后,在 MongoDB 安装目录下的 bin 文件夹中找到 mongod.cfg 文件,用文本编辑器打开并修改如下内容:

storage:
  dbPath: C:\data\db

这里我们将数据存储路径设置为刚刚创建的文件夹。

  1. 安装 MongoDB 服务

打开命令提示符(以管理员身份运行),切换到 MongoDB 安装目录下的 bin 文件夹,执行以下命令安装 MongoDB 服务:

mongod.exe --config "C:\Program Files\MongoDB\Server\4.4\bin\mongod.cfg" --install

这里需要根据实际的 MongoDB 版本和安装路径进行修改。

  1. 启动 MongoDB 服务

执行以下命令启动 MongoDB 服务:

net start MongoDB

至此,MongoDB 已经成功安装并启动。

1.2 Linux 平台安装(以 Ubuntu 为例)

  1. 导入 MongoDB 公钥

执行以下命令导入 MongoDB 公钥,以确保安装包的完整性:

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
  1. 添加 MongoDB 源

创建 /etc/apt/sources.list.d/mongodb-org-4.4.list 文件,并添加以下内容:

deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse

这里以 Ubuntu 20.04(Focal)为例,其他版本请参考官方文档。

  1. 安装 MongoDB

更新软件包列表,并安装 MongoDB:

sudo apt-get update
sudo apt-get install -y mongodb-org
  1. 启动 MongoDB 服务

执行以下命令启动 MongoDB 服务:

sudo systemctl start mongod
  1. 设置开机启动

执行以下命令设置 MongoDB 服务开机启动:

sudo systemctl enable mongod

至此,MongoDB 已经成功安装并启动。

2. MongoDB 配置

2.1 配置文件

MongoDB 的配置文件(例如 mongod.cfg/etc/mongod.conf)采用 YAML 格式,包含了许多配置选项。以下是一些常用的配置选项:

  • storage.dbPath:数据存储路径。
  • systemLog.path:日志文件路径。
  • systemLog.logAppend:是否在日志文件末尾追加内容。
  • net.bindIp:绑定的 IP 地址。
  • net.port:监听的端口号。
  • security.authorization:是否启用用户认证。

2.2 用户认证

为了提高安全性,我们可以启用 MongoDB 的用户认证功能。首先,修改配置文件,将 security.authorization 设置为 enabled

security:
  authorization: enabled

然后,重启 MongoDB 服务使配置生效。接下来,我们需要创建一个管理员用户。首先,使用 mongo 命令连接到 MongoDB:

mongo

mongo shell 中,切换到 admin 数据库,并创建一个管理员用户:

javascript 复制代码
use admin
db.createUser({
  user: "admin",
  pwd: "your_password",
  roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
})

这里我们创建了一个名为 admin 的用户,并为其分配了 userAdminAnyDatabase 角色,该角色允许用户管理任何数据库的用户。请将 your_password 替换为实际的密码。

创建管理员用户后,我们可以使用以下命令以管理员身份连接到 MongoDB:

mongo --username admin --password your_password --authenticationDatabase admin

在实际应用中,我们通常需要为每个数据库创建单独的用户。例如,我们可以为名为 mydb 的数据库创建一个用户:

javascript 复制代码
use mydb
db.createUser({
  user: "mydb_user",
  pwd: "your_password",
  roles: [{ role: "readWrite", db: "mydb" }]
})

这里我们创建了一个名为 mydb_user 的用户,并为其分配了 readWrite 角色,该角色允许用户读写 mydb 数据库。请将 your_password 替换为实际的密码。

总结

本文详细介绍了 MongoDB 的安装与配置过程,包括在 Windows 和 Linux 平台上的安装,以及配置文件和用户认证的设置。在实际应用中,我们需要根据需求和环境来选择合适的安装方式和配置选项。同时,为了提高安全性,我们应该启用用户认证功能,并为每个数据库创建单独的用户。

相关推荐
喵叔哟27 分钟前
重构代码之移动字段
java·数据库·重构
念白44330 分钟前
智能病历xml提取
数据库·sql·oracle
qingy_204634 分钟前
【JavaWeb】JavaWeb入门之XML详解
数据库·oracle
大数据面试宝典39 分钟前
用AI来写SQL:让ChatGPT成为你的数据库助手
数据库·人工智能·chatgpt
努力的小雨43 分钟前
快速上手 KSQL:轻松与数据库交互的利器
数据库·经验分享
Gentle5861 小时前
labview中连接sql server数据库查询语句
数据库·labview
Gentle5861 小时前
labview用sql server数据库存取数据到一个单元格
数据库·labview
2401_857636391 小时前
共享汽车管理新纪元:SpringBoot框架应用
数据库·spring boot·汽车
菲兹园长1 小时前
表的设计(MYSQL)
数据库·mysql
Java Fans1 小时前
MySQL数据库常用命令大全(完整版——表格形式)
数据库·mysql