Linux服务器安装部署最新稳定版本mongoDB社区版- Ubuntu-20.04版本

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云数据库 MongoDB,通用型 2核4GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux服务器安装部署最新稳定版本mongoDB社区版- Ubuntu-20.04版本

先决条件


  1. 再次强调一下,确认好服务器的操作系统版本,可参考:查看linux操作系统版本
  2. 是否是mongoDB支持的版本,如下仅支持的Ubuntu版本


f6e3bc0bd55f4a82ac5ca0f802dd55ae.png



前言


Linux其他系统可直接参考官网:在 Linux 上安装 MongoDB 社区版

如下,包括Ubuntu系统在内的所有教程都用

image.png


下面仅以我实操Ubuntu系统安装过程讲解(其实也是跟随mongo官网走了一遍),废话不多说,上干货


Ubuntu 系统安装 MongoDB 最新稳定社区版


一、安装 MongoDB 社区版


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

终端执行以下命令----(目的:以从中导入 MongoDB 公共 GPG 密钥)

wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -


成功执行完如下显示 OK


d03fcba628ac42d6814d438d831d5bfb.png

如果有报错提示gnupg未安装

可以执行下面两步

使用以下命令安装gnupg及其所需的库:

sudo apt-get install gnupg


  1. 安装后,重试导入密钥:

wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -


2.为 MongoDB 创建文件


这里就需要知道Ubuntu系统的小版本号了,如果不清楚,依然参考:查看linux操作系统版本

不同版本号执行的命令不同

选择对应的 Ubuntu 版本执行如下命令

(目的:创建文件- /etc/apt/sources.list.d/mongodb-org-5.0.list)

Ubuntu 20.04版本

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list


我的是Ubuntu 20.04版本

执行命令

87cd7a8dbcce470cb50f5ec2e543de49.png

执行完检查,已然创建了该文件


dd921b7b49604d5babb1cbf550617395.png

Ubuntu 18.04 版本

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list

Ubuntu 16.04 版本

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list


3.重新加载本地包数据库


执行如下命令


sudo apt-get update


执行命令截图,如图最下面,出现Reading package lists… Done,即执行完成


image.png



4.安装 MongoDB 包


这里可以选择安装最新稳定版本的 MongoDB 或特定版本的 MongoDB

我是安装的最新稳定版本,至于特定版本也没那个需求,就不赘述了,有需要的可以翻上面的mongo官网参考

安装命令如下

sudo apt-get install -y mongodb-org


执行命令中。。。

image.png


安装完成如下

image.png

OK了,安装步骤到此圆满结束,我们开启运行mongo之旅


二、运行 MongoDB 社区版


在运行之前,先看一下数据和日志存放目录,以及配置文件,或者可以先跳过直接看初始化系统


数据和日志目录


如果是根据我上面的流程通过包管理器安装的,那么数据目录 /var/lib/mongodb和日志目录/var/log/mongodb会在安装过程中创建

数据和日志目录如下图


image.png


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


配置文件


官方 MongoDB 包中包含一个配置文件( /etc/mongod.conf)。这些设置(例如数据目录和日志目录规范)在启动时生效。也就是说,如果在MongoDB实例运行时更改配置文件,必须重启实例才能使更改生效。

配置文件如下

image.png


1.初始化系统


要运行和管理mongod进程,需要使用操作系统的内置初始化系统。

  • 最新版本的 Linux 倾向于使用systemd(使用systemctl命令)
  • 旧版本的 Linux 倾向于使用System V init(使用service命令)。


不确定使用的哪个 init 系统,可运行以下命令:

ps --no-headers -o comm 1

如下,我是systemd

7153341cd0f44987a63612d3922232e5.png


下面分init 系统展开

(1)新版本-systemd系统

因为我的就是systemd系统,所以这部分会附加一些实操截图

a.启动 MongoDB

执行如下启动命令

sudo systemctl start mongod


c012721a49e74a1b877951f4ef14c848.png

如果在启动时收到类似如下的错误 mongod

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

需要先运行以下命令:

sudo systemctl daemon-reload

然后再次运行启动命令

sudo systemctl start mongod
b.验证 MongoDB 是否已成功启动
sudo systemctl status mongod

成功启动则如下截图展示


fe4ace4111e945a6826bc3fe32ae7278.png

如果想确保系统重启后仍然启动MongoDB,可通过如下命令设置:

sudo systemctl enable mongod
c.停止 MongoDB
sudo systemctl stop mongod
d.重启 MongoDB
sudo systemctl restart mongod


e.使用 MongoDB

运行以下命令默认连接端口 27017的mongod

mongosh


如下图进入了,可以进行使用了

image.png


(2)旧版本-init系统

a.启动 MongoDB
sudo service mongod start


b.验证MongoDB是否启动成功
sudo service mongod status

还可以检查日志文件查看 mongod进程的当前状态,默认: /var/log/mongodb/mongod.log

如果是正在运行的 mongod实例展示如下:

[initandlisten] waiting for connections on port 27017
c.停止 MongoDB
sudo service mongod stop


d.重启 MongoDB
sudo service mongod restart


e.使用 MongoDB

默认连接端口 27017的mongod

mongosh


三、卸载 MongoDB 社区版(反正我没搞)


这个就不多说了


大家需要的话照样参考上面mongo官网去尝试吧🤦‍♂️,我实在不敢招惹mongoDB了,怕了怕了


cd674e76bfd54c799f54c456a8403e1d.png

相关实践学习
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
9天前
|
存储 应用服务中间件 文件存储
Ngnix服务器版本升级需求分析,如何不停止Ngnix服务进行升级
Ngnix服务器版本升级需求分析,如何不停止Ngnix服务进行升级
若依修改,若依部署在本地运行时的注意事项,后端连接了服务器,本地的vue.config.js要先改成localhost:端口号与后端匹配,部署的时候再改公网IP:端口号
若依修改,若依部署在本地运行时的注意事项,后端连接了服务器,本地的vue.config.js要先改成localhost:端口号与后端匹配,部署的时候再改公网IP:端口号
|
12天前
|
NoSQL 关系型数据库 MySQL
多机部署:打造内网服务器集群
在多机部署教程中,了解如何配置分布式应用如Laravel以使用Redis同步用户状态。关键步骤包括:修改MySQL的`bind-address`至内网IP,重启服务;同样修改Redis的`bind`,重启服务;以及调整Elasticsearch的`network.host`和`discovery.seed_hosts`,并重启。通过这些步骤,确保服务间能内网通信,实现多服务器状态同步。
27 2
|
12天前
|
缓存 弹性计算 应用服务中间件
阿里云服务器部署Jupyter私房菜
在阿里云ECS上,选用2核2G的配置,安装Ubuntu 22.04,然后部署Nginx作为Jupyter Notebook的反向代理。安装Miniconda3,配置清华TUNA镜像源以加速下载。创建Jupyter Notebook,设置密码和远程访问,通过Nginx配置实现安全访问。整个过程包括安装Jupyter,修改Nginx配置,最后通过浏览器访问 Notebook。
阿里云服务器部署Jupyter私房菜
|
10天前
|
网络协议 Linux
云服务器内部端口占用,9090端口已经存在了,如何关闭,Linux查询端口,查看端口,端口查询,关闭端口写法-netstat -tuln,​fuser -k 3306/tcp​
云服务器内部端口占用,9090端口已经存在了,如何关闭,Linux查询端口,查看端口,端口查询,关闭端口写法-netstat -tuln,​fuser -k 3306/tcp​
|
10天前
|
大数据 Linux 程序员
软件开发常见流程之服务器+Linux部署项目,会用服务器+Linux部署项目资料
软件开发常见流程之服务器+Linux部署项目,会用服务器+Linux部署项目资料
|
11天前
|
负载均衡 Java Linux
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
|
12天前
|
安全 固态存储 Linux
服务器linux操作系统重装的完整流程-傻瓜式教学
服务器linux操作系统重装的完整流程-傻瓜式教学
|
4天前
|
数据挖掘 Linux 数据处理
Linux命令sprof详解
**`sprof`是Linux下的共享库性能分析工具,补充`gprof`,专注分析`.profile`文件以识别性能瓶颈。通过调用次数、执行时间数据优化资源和代码。使用参数如`-F`、`-I`、`-d`进行定制化分析。示例:先设置`LD_PROFILE`环境变量,运行程序生成`.profile`,然后用`sprof`分析。注意需用`-g`编译程序,并在代表性的负载下分析。结合其他工具如`perf`、`valgrind`提升分析效果。**
|
1天前
|
关系型数据库 MySQL Linux
Linux命令systemctl详解
`systemctl`是Linux系统用于管理systemd服务的核心命令,它与systemd守护进程交互,实现启动、停止、重启服务及查看服务状态等功能。主要参数包括`start`、`stop`、`restart`、`status`、`enable`和`disable`等。例如,启动Apache服务使用`systemctl start httpd.service`,查看服务状态用`systemctl status <service>`。使用时需注意权限,服务名通常以`.service`结尾,但命令中可省略。最佳实践包括利用tab键补全、定期查看服务状态和合理配置服务自启。