ubuntu20.04服务器搭建mongodb7

安装参考自mongo官网:在 Ubuntu 上安装 MongoDB Community Edition - MongoDB 手册 v7.0

MongoDB 版本

本教程安装的是 MongoDB 7.0 Community Edition。想要安装不同版本的 MongoDB Community Edition,请移步本页面左上角的版本下拉菜单,选择该版本对应的文档进行参照。

注意事项

平台支持

MongoDB 7.0 社区版支持以下采用 64 位 架构的 x86_64 Ubuntu LTS(长期支持)版本:

  • 22.04 LTS ("Jammy")

  • 20.04 LTS ("Focal")

MongoDB 仅支持这些平台的 64 位版本。要确定您的主机当前正在运行的 Ubuntu 版本,请在主机的终端上运行以下命令:

 
cat /etc/lsb-release

Ubuntu 上的 MongoDB 7.0 社区版还支持某些平台上的 ARM64 架构。

更多信息,请参阅平台支持。

生产说明

在生产环境部署 MongoDB 之前,请考虑生产环境说明文档,其中提供了有关生产环境中 MongoDB 部署的性能注意事项和配置建议。

官方 MongoDB 软件包

要在 Ubuntu 系统上安装 MongoDB Community,以下说明将使用由 MongoDB Inc. 维护和支持的官方 mongodb-org 软件包。官方 mongodb-org 软件包始终包含最新版本的 MongoDB,并且可以从其专用存储库中获取。

重要

Ubuntu 提供的mongodb 包并不由 MongoDB Inc. 维护,且与官方的 mongodb-org 包冲突。如果您已在您的 Ubuntu 系统上安装了 mongodb 包,则必须先卸载 mongodb 包,才能继续执行这些操作。

请参阅MongoDB Community Edition软件包,获取官方软件包的完整清单。

安装 MongoDB Community Edition

按照以下步骤使用 apt 软件包管理器安装 MongoDB Community Edition。

1

导入包管理系统使用的公钥

从终端安装 gnupg 和 curl(如果尚未安装):

 
sudo apt-get install gnupg curl

要导入 MongoDB 公共 GPG 密钥,请运行以下命令:

 
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
--dearmor

2

为 MongoDB 创建列表文件

为您的 Ubuntu 版本创建列表文件 /etc/apt/sources.list.d/mongodb-org-7.0.list

Ubuntu 22.04 (Jammy)

Ubuntu 20.04 (Focal)

为 Ubuntu 20.04 (Focal) 创建/etc/apt/sources.list.d/mongodb-org-7.0.list文件:

 
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

3

重新加载本地包数据库

发出以下命令以重新加载本地软件包数据库:

 
sudo apt-get update

4

安装 MongoDB 软件包

您可以安装最新稳定版本的 MongoDB 或指定版本的 MongoDB。

安装最新版本的 MongoDB

安装特定版本的 MongoDB

要安装最新的稳定版本,请执行以下命令:

 
sudo apt-get install -y mongodb-org

可选。虽然您可以指定任意可用版本的 MongoDB,但当有新版本可用时,apt-get 仍会升级这些包。要防止意外升级,可将此包固定到当前安装的版本:

 
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-database hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-mongosh hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections

在 Ubuntu 中安装 MongoDB 时,如需对过程中遇到的错误进行故障排查,请参阅故障排查指南。

运行 MongoDB Community Edition

ulimit 注意事项

大多数类 Unix 操作系统都会对每个进程可以使用的系统资源进行限制。这些限制可能会对 MongoDB 操作产生负面影响,应进行适当调整。有关您平台的建议设置,请参阅 UNIX ulimit 设置 。

注意

如果打开文件数的 ulimit 值低于 64000,MongoDB 会生成初创企业警告。

目录

如果通过软件包管理器安装,则在安装过程中会创建数据目录 /var/lib/mongodb 和日志目录 /var/log/mongodb

默认情况下,MongoDB 使用 mongodb 用户账户运行。如果更改运行 MongoDB 进程的用户,您还必须修改数据和日志目录以赋予该用户访问这些目录的权限。

配置文件

MongoDB 官方软件包有一份配置文件 (/etc/mongod.conf)。这些设置(如数据目录和日志目录规范)将在启动时生效。换言之,如果在 MongoDB 实例运行时更改该配置文件,则必须重新启动实例才能使更改生效。

步骤

请按照以下步骤在系统上运行 MongoDB 社区版。 这些说明假定您使用的是官方 mongodb-org 包,而不是由 Ubuntu 提供的非官方 mongodb 包,并且您使用的是默认设置。

初始化系统

要运行和管理 mongod 进程,需使用操作系统内置的初始化系统。较新版本的 Linux 倾向于使用 systemd(它会使用 systemctl 命令),而较旧版本的 Linux 倾向于使用 System V init(它使用 service 命令)。

如果您不确定您的平台使用的是哪个初始化系统,请运行以下 命令:

 
ps --no-headers -o comm 1

然后根据结果选择下面合适的标签页:

  • systemd - 选择下方的 systemd (systemctl) 标签页。

  • init - 选择下方的 System V Init (service) 标签页。

systemd (systemctl)

System V Init (service)

1

启动 MongoDB。

您可以通过发出以下命令来启动 mongod 进程:

 
sudo systemctl start mongod

如果收到类似下方的错误(在启动 mongod 时):

Failed to start mongod.service: Unit mongod.service not found.

首先运行以下命令:

 
sudo systemctl daemon-reload

然后再次运行上面的启动命令。

2

验证 MongoDB 是否已成功启动。
 
sudo systemctl status mongod

您可以通过选择执行以下命令,来确保 MongoDB 将在系统 重新启动后启动:

 
sudo systemctl enable mongod

3

停止 MongoDB。

您可以根据需要,通过发出以下命令来停止 mongod 进程:

 
sudo systemctl stop mongod

4

重启 MongoDB。

您可以通过发出以下命令来重启 mongod 进程:

 
sudo systemctl restart mongod

通过观察 /var/log/mongodb/mongod.log 文件中的输出,可以跟踪错误或重要消息的进程状态。

5

开始使用 MongoDB。

在与 相同的主机上启动 会话。您可以在不使用任何命令行选项的情况下运行 mongosh,从而连接在本地主机上运行且默认端口号为 27017 的 mongod。

 
mongosh

如需进一步了解使用 mongosh 进行连接(例如连接在其他主机和/或端口上运行的 mongod 实例),请参阅 mongosh 文档。

为了帮助您开始使用 MongoDB,MongoDB 提供了各种驱动程序版本的入门指南。关于驱动程序文档,请参阅 开始使用 MongoDB 开发。

卸载 MongoDB Community Edition

要从系统中完全删除 MongoDB,您必须删除 MongoDB 应用程序本身、配置文件以及任何包含 数据和日志的目录。以下部分将指导您完成所需的步骤。

警告

此过程将完全删除 MongoDB、其配置以及所有数据库。此过程不可逆,因此请确保在继续之前备份所有配置和数据。

1

停止 MongoDB。

通过发出以下命令来停止 mongod 进程:

 
sudo service mongod stop

2

删除包。

删除您之前安装的所有 MongoDB 包。

 
sudo apt-get purge "mongodb-org*"

3

删除数据目录。

删除 MongoDB 数据库和日志文件。

 
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

更多信息

默认绑定本地主机

默认情况下,MongoDB 启动时会将bindIp设置为127.0.0.1 ,绑定到本地主机网络接口。这意味着mongod只能接受来自同一计算机上运行的客户端的连接。远程客户端将无法连接到mongod ,并且mongod将无法初始化副本集,除非将此值设置为可从远程客户端访问的有效网络接口。

该值可通过以下任一方式配置:

  • 在 MongoDB 配置文件中使用 bindIp,或

  • 通过命令行参数 --bind_ip

警告

将实例绑定到可公开访问的 IP 地址之前,必须保护集群免遭未经授权的访问。有关安全建议的完整列表,请参阅安全检查清单。至少应考虑强化网络基础设施和启用身份验证

有关配置 bindIp 的更多信息,请参阅 IP 绑定。

MongoDB 社区版包

MongoDB Community Edition 可从其专用 存储库获取,并包含以下官方支持的包:

包名称

说明

mongodb-org

自动安装下列组件包的 metapackage

mongodb-org-database

自动安装下列组件包的 metapackage

包名称

说明

mongodb-org-server

包含 mongod 守护程序、相关的初始化脚本和配置文件 (/etc/mongod.conf)。您可以使用初始化脚本启动mongod与配置文件。有关详细信息,请参阅上面的“运行 MongoDB 社区版”部分。

mongodb-org-mongos

包含 mongos 守护程序。

mongodb-mongosh

包含 MongoDB Shell (mongosh)。

mongodb-org-tools

自动安装下列组件包的 metapackage

包名称

说明

mongodb-database-tools

包含以下 MongoDB 数据库工具:

  • mongodump

  • mongorestore

  • bsondump

  • mongoimport

  • mongoexport

  • mongostat

  • mongotop

  • mongofiles

mongodb-org-database-tools-extra

包含 install_compass 脚本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/875595.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【SQL 新手教程 1/20】SQL语言MySQL数据库 简介

💗 什么是SQL?⭐ (Structured Query Language) 结构化查询语言,是访问和处理关系数据库的计算机标准语言 无论用什么编程语言(Java、Python、C……)编写程序,只要涉及到操作关系数据库都必须通过SQL来完成 …

4招清洁法,清理电脑无死角,焕然一新效率高

随着时间的积累,电脑内部可能会堆积起大量的垃圾文件、缓存数据和无用程序。因此,定期清理电脑是很有必要的。为了让你的电脑重新焕发生机,提高工作效率,本文将为你介绍4招实用的清洁法,助你轻松清理电脑死角&#xff…

JavaWeb学习——请求响应、分层解耦

目录 一、请求响应学习 1、请求 简单参数 实体参数 数组集合参数 日期参数 Json参数 路径参数 总结 2、响应 ResponseBody&统一响应结果 二、分层解耦 1、三层架构 三层架构含义 架构划分 2、分层解耦 引入概念 容器认识 3、IOC&DI入门 4、IOC详解 …

Cadence23学习笔记(十四)

ARC就是圆弧走线的意思: 仅打开网络的话可以只针对net进行修改走线的属性: 然后现在鼠标左键点那个走线,那个走线就会变为弧形: 添加差分对: 之后,分别点击两条线即可分配差分对: 选完差分对之后…

微服务实践和总结

H5原生组件web Component Web Component 是一种用于构建可复用用户界面组件的技术&#xff0c;开发者可以创建自定义的 HTML 标签&#xff0c;并将其封装为包含逻辑和样式的独立组件&#xff0c;从而在任何 Web 应用中重复使用。 <!DOCTYPE html> <html><head…

【vue3|第18期】Vue-Router路由的三种传参方式

日期:2024年7月17日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对的地方,还望各位大佬不吝赐教,谢谢^ - ^ 1.01365 = 37.7834;0.99365 = 0.0255 1.02365 = 1377.408…

unity2D游戏开发01项目搭建

1新建项目 选择2d模板,设置项目名称和存储位置 在Hierarchy面板右击&#xff0c;create Empty 添加组件 在Project视图中右键新建文件夹 将图片资源拖进来&#xff08;图片资源在我的下载里面&#xff09; 点击Player 修改属性&#xff0c;修好如下 点击Sprite Editor 选择第二…

Angular由一个bug说起之八:实践中遇到的一个数据颗粒度的问题

互联网产品离不开数据处理&#xff0c;数据处理有一些基本的原则包括&#xff1a;准确性、‌完整性、‌一致性、‌保密性、‌及时性。‌ 准确性&#xff1a;是数据处理的首要目标&#xff0c;‌确保数据的真实性和可靠性。‌准确的数据是进行分析和决策的基础&#xff0c;‌因此…

【数据结构】建堆算法复杂度分析及TOP-K问题

【数据结构】建堆算法复杂度分析及TOP-K问题 &#x1f525;个人主页&#xff1a;大白的编程日记 &#x1f525;专栏&#xff1a;数据结构 文章目录 【数据结构】建堆算法复杂度分析及TOP-K问题前言一.复杂度分析1.1向下建堆复杂度1.2向上建堆复杂度1.3堆排序复杂度 二.TOP-K问…

深度学习1-简介

人工智能&#xff08;AI&#xff09;旨在打造模仿智能行为的系统。它覆盖了众多方法&#xff0c;涵盖了基于逻辑、搜索和概率推理的技术。机器学习是 AI 的一个分支&#xff0c;它通过对观测数据进行数学模型拟合来学习决策制定。这个领域近年来迅猛发展&#xff0c;现在几乎&a…

​ ​【Linux】-----工具篇(多模式编辑器vim介绍及配置)

目录 认识常用三种模式 基本操作 Ⅰ、进入/打开vim Ⅱ、模式转换 Ⅲ、退出vim 命令集 Ⅰ、命令模式下 移动光标 删除文字 复制 替换 撤销 批量化注释 批量化去注释 Ⅱ、底行模式下 列出行号 跳转至指定行 查找字符 保存文件 退出vim 查看文件 分屏操作 vim的简…

论文阅读:面向自动驾驶场景的多目标点云检测算法

论文地址:面向自动驾驶场景的多目标点云检测算法 概要 点云在自动驾驶系统中的三维目标检测是关键技术之一。目前主流的基于体素的无锚框检测算法通常采用复杂的二阶段修正模块,虽然在算法性能上有所提升,但往往伴随着较大的延迟。单阶段无锚框点云检测算法简化了检测流程,…

微信小程序:vant-weapp 组件库、css 变量

vant-weapp 组件库 前往 vant-weapp 官网 npm 使用限制&#xff1a;不支持依赖于 Node.js 内置库、浏览器内置对象、C 插件 的包。 安装 vant-weapp # 通过 npm 安装 npm i vant/weapp -S --production# 通过 yarn 安装 yarn add vant/weapp --production# 安装 0.x 版本 npm i…

Mac环境报错 error: symbol(s) not found for architecture x86_64

Mac 环境Qt Creator报错 error: symbol(s) not found for architecture x86_64 错误信息 "symbol(s) not found for architecture x86_64" 通常是在编译或链接过程中出现的问题。这种错误提示通常涉及到符号未找到或者是因为编译器没有找到适当的库文件或函数定义。 …

powe bi界面认识及矩阵表基本操作 - 1

powe bi界面认识及矩阵表操作 1. 界面认识1.1 选择数据源1.2 选择相关表及点击加载1.3 表字段显示位置1.4 表属性按钮位置1.5 界面布局按钮认识 2. 矩阵表基本操作2.1 选择矩阵表2.2 创建矩阵表2.3 设置字体大小2.4 行填充&#xff1a;修改高度2.5 列宽&#xff1a;设置列的宽度…

【Python实战因果推断】55_因果推理概论5

目录 Consistency and Stable Unit Treatment Values Violations Causal Quantities of Interest Consistency and Stable Unit Treatment Values 在上述方程中&#xff0c;隐含着两个基本假设。第一个假设意味着潜在结果与处理是一致的&#xff1a;当时&#xff0c;。换句…

Vue3相比于Vue2进行了哪些更新

1、响应式原理 vue2 vue2中采用 defineProperty 来劫持整个对象&#xff0c;然后进行深度遍历所有属性&#xff0c;给每个属性添加getter和setter&#xff0c;结合发布订阅模式实现响应式。 存在的问题&#xff1a; 检测不到对象属性的添加和删除数组API方法无法监听到需要对…

Shader笔记1:基础概念

有相当一部分来自shader圣经 Base of CG Concepts Tangent, Normal and Binormal N&#xff1a;法线&#xff08;Normal, N&#xff09;垂直于表面 T&#xff1a;切线&#xff08;Tangent, T&#xff09;与U方向同向 B&#xff1a;副切线&#xff08;BiTangent, B&#xff09…

ADS 使用教程(十六)Using Sliders for Data Processing

上一篇&#xff1a;ADS 使用教程&#xff08;十五&#xff09;Multi-Dimensional Data Processing in ADS 在这一节&#xff0c;我们来谈论一下如何在进行多维数据处理时使用滑块&#xff08;Sliders&#xff09;来进行数据处理和分析。通过该方法&#xff0c;我们可以通过拖动…

python-docx 如何将列表中的值提取到段落中的run以及保存为多个文档?

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…