MongoDB简介
- MongoDB 是一种 面向文档的数据库,而不是关系型数据库。
- 远离关系模型的主要原因是使扩展更容易,但也有一些其他优点。面向文档的数据库将“行”的概念替换为更灵活的模型“文档”。
- 通过允许嵌入文档和数组,面向文档的方法可以用单个记录表示复杂的层次关系。这自然符合现代面向对象语言的开发人员思考数据的方式。
- MongoDB 是一个通用数据库,因此除了创建、读取、更新和删除数据之外,它还提供了您期望从数据库管理系统和许多其他功能中脱颖而出的大多数功能。
- 性能是 MongoDB 的一个驱动目标,并且影响了它的大部分设计。它在其 WiredTiger 存储引擎中使用机会锁定来最大化并发性和吞吐量。它使用尽可能多的 RAM 作为其缓存,并尝试自动选择正确的查询索引。
步骤 1:创建存储库
创建一个 mongoDB 存储库文件
/etc/yum.repos.d/mongodb-org-5.0.repo
并输入以下内容
[mongodb-org-5.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https:// www.mongodb.org/static/pgp/server-5.0.asc
更新 repo
yum update -y
第 2 步:安装 MongoDB 包
要安装 MongoDB 的最新稳定版本,请运行以下命令:
yum install -y mongodb-org
或者,要安装特定版本的 MongoDB,请指定每个包的版本号:
yum install -y mongodb-org-5.0.1 mongodb-org-database-5.0.1 mongodb-org-server-5.0.1 mongodb-org-shell-5.0.1 mongodb-org-mongos -5.0.1 mongodb-org-tools-5.0.1
为了防止升级 yum 导致意外升级。要固定,请将 exclude 指令中的以下包添加到/etc/yum.conf
:
cat >> /etc/yum.conf << EOF
exclude=mongodb-org,mongodb-org-database,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
EOF
默认情况下,MongoDB 使用mongod用户帐户运行并使用以下默认目录,
/var/lib/mongo(数据目录)
/var/log/mongodb(日志目录)
以及下面的配置文件。
/etc/mongod.conf
您可以在文件中看到任何更改、错误、重要消息的发现/var/log/mongodb/mongod.log
。
第 3 步:运行 MongoDB 实例
启动 MongoDB 服务:
systemctl start mongod
mongo 5 需要cpu 支持AVX才能够使用,如果CPU不支持AVX 这里将会出错,提示 core dump,这个是可以参考
在 Rocky Linux 8|AlmaLinux 8|RHEL 8 上安装 mongo 4.4_似水流年__的博客-CSDN博客
安装 mongo 4.4 .
第 4 步:连接到 MongoDB 实例
在localhost
默认端口27017
中,您可以运行mongosh
命令行工具 MongoDB shell 来连接实例:
mongosh
这类似于:
mongosh "mongodb://localhost:27017"
第 5 步:启用远程连接
默认情况下,MongoDB 不允许任何远程连接。bindIP
要启用它,请在/etc/mongod.conf
文件中添加关联的远程客户端 IP :
找到以下部分:
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1 # 输入 0.0.0.0,:: 绑定到所有 IPv4 和 IPv6 地址,或者使用 net.bindIpAll 设置。
并将其变成以下部分:
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1, 10.100.20.181 # Enter 0.0.0.0,:: 绑定到所有 IPv4 和 IPv6 地址,或者,使用 net.bindIpAll 设置。
这里,10.100.20.181
是 MongoDB 服务器的 IP 地址。重启服务生效:
systemctl restart mongod
现在检查来自客户端节点的远程连接:
mongosh "mongodb://10.100.20.181:27017"
第 6 步:配置防火墙
接下来我们将允许端口进入防火墙,因为我们在 Rocky Linux 设置中使用了 firewalld,所以我们将使用相同的端口来允许端口
firewall-cmd --permanent --add-port=27017/tcp
firewall-cmd --reload
第 7 步:配置 SELinux
接下来我们还将在 SELinux 上允许 mongodb 端口
semanage port -a -t mongod_port_t -p tcp 27017
第 8 步:卸载 MongoDB
此过程将完全删除 MongoDB 包、配置文件、数据目录和日志目录。因此,在执行此步骤之前,请备份您的所有数据。
通过发出以下命令停止 mongodb 进程:
systemctl disable mongod
systemctl stop mongod
删除软件包:
rm -r /var/log/mongodb
rm -r /var/lib/mongo
概括
在本教程中,我们学习了如何获取 MongoDB 软件。我们还讨论了版本号、如何安装和运行 MongoDB,以及如何在 Rocky Linux 上安装和运行其先决条件。接下来,我们启用防火墙和 SELinux 以建立与数据库的连接。