系统环境

标题 版本 备注
系统版本 ubuntu 22.04.3 LTS (Jammy Jellyfish) -
内核版本 5.15.0-88-generic #98-Ubuntu SMP Mon Oct 2 15:18:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux -
MongoDB v16.0.10 -

MongoDB 简介

MongoDB是一种开源的面向文档的NoSQL数据库,由于其灵活的数据模型和强大的功能,成为了现代应用程序开发中常用的数据库之一。

以下是MongoDB的一些关键特性和优势:

  1. 面向文档的数据模型:MongoDB使用JSON格式的文档来存储数据,这种文档模型非常灵活,可以轻松地存储不同结构和类型的数据。

  2. 灵活的数据模式:与传统的关系型数据库相比,MongoDB不需要提前定义表结构,可以根据需要随时添加新的字段,使得数据模型更具灵活性。

  3. 分布式架构:MongoDB支持分布式部署,可以在多台服务器上进行水平扩展,实现高可用性和水平扩展。

  4. 高性能:MongoDB具有高性能的读写操作,支持高并发访问和快速的数据检索。

  5. 丰富的查询功能:MongoDB支持丰富的查询功能,包括范围查询、正则表达式、聚合管道等,可以满足各种数据检索需求。

  6. 数据复制和故障恢复:MongoDB支持数据复制和故障恢复,可以实现数据的备份和恢复,保证数据的可靠性和安全性。

  7. 地理空间索引:MongoDB支持地理空间索引,可以存储和查询地理位置信息,适用于地理信息系统和位置服务应用。

  8. 丰富的工具和生态系统:MongoDB拥有丰富的工具和生态系统,包括管理工具、ORM框架、数据可视化工具等,为开发人员提供了便利。

总的来说,MongoDB是一种功能强大、灵活性高、性能优越的NoSQL数据库,适用于各种规模和类型的应用程序开发。

部署 MongoDB

1.从 MongoDB 官方站点 下载与系统对应的免费的社区版本包到服务器指定目录:

1
2
sudo wget -O /usr/local/src/mongodb-org-server_6.0.10_amd64.deb https://repo.mongodb.org/apt/ubuntu/dists/jammy/mongodb-org/6.0/multiverse/binary-amd64/mongodb-org-server_6.0.10_amd64.deb

2.安装:

1
sudo dpkg -i /usr/local/src/mongodb-org-server_6.0.10_amd64.deb

3.创建数据和日志存放目录

1
sudo mkdir -p /data/mongodb/{data, logs}

4.将 /data/mongodb 目录的拥有者改为 mongodb 用户

1
sudo chown -R mongodb:mongodb /data/mongodb

5.修改mongodb配置文件,主要是指定数据存放路径和日志存放路径,如下:

1
2
3
4
5
6
7
8
9
10
11
12
root@ubuntu2204:~# egrep -v '^$|^#' /etc/mongod.conf
storage:
dbPath: /data/mongodb/data
systemLog:
destination: file
logAppend: true
path: /data/mongodb/logs/mongod.log
net:
port: 27017
bindIp: 127.0.0.1
processManagement:
timeZoneInfo: /usr/share/zoneinfo

6.启动 mongodb:

1
2
sudo systemctl restart mongod.service

7.查看 mongodb 状态

1
2
3
4
5
6
7
8
9
10
11
12
13
14
root@ubuntu2204:~# systemctl status mongod.service
● mongod.service - MongoDB Database Server
Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
Active: active (running) since Fri 2023-10-06 13:54:02 UTC; 3min 20s ago
Docs: https://docs.mongodb.org/manual
Main PID: 1977 (mongod)
Memory: 68.2M
CPU: 960ms
CGroup: /system.slice/mongod.service
└─1977 /usr/bin/mongod --config /etc/mongod.conf

Oct 06 13:54:02 ubuntu2204 systemd[1]: Started MongoDB Database Server.
Oct 06 13:54:02 ubuntu2204 mongod[1977]: {"t":{"$date":"2023-10-06T13:54:02.262Z"},"s":"I", "c":"CONTROL", "id":7484500, "ctx":"-","msg":"Environment variable MONGODB_CONFIG_O>
lines 1-12/12 (END)