优秀的编程知识分享平台

网站首页 > 技术文章 正文

Linux中如何安装MongoDB服务?(linux启动mongodb服务)

nanyue 2024-07-22 14:01:42 技术文章 7 ℃

MongoDB是一个开源的文档数据库,根据GNU Affero General Public License(AGPL)开放源代码许可证发布。这意味着你可以免费获取、使用和修改MongoDB的源代码。这里我们就来介绍一下Linux中如何安装MongoDB服务。

使用包管理工具(如apt或yum)安装MongoDB

对于Debian或Ubuntu系统,可以使用apt包管理工具进行安装,如下所示。

sudo apt update
sudo apt install mongodb

对于CentOS或Fedora等系统,可以使用yum包管理工具进行安装,如下所示。

sudo yum install mongodb

这种方式安装的话相对比较简单,直接可以通过命令行的方式来进行安装,当然,我们也可以通过安装包进行安装。如下所示。

通过MongoDB官方提供的安装包进行安装

首先需要去MongoDB的官网去下载合适的Linux版本安装包,MongoDB官网https://www.mongodb.com/try/download/community。

下载完成之后,我们将下载好的安装包进行解压,并且需要配置相应的环境变量,下面我们先来演示如何在Debian或Ubuntu系统中进行安装。如下所示。

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
sudo apt-get update
sudo apt-get install -y mongodb-org

接下来我们介绍如何在CentOS系统中进行安装,首先就需要选择合适的安装包,并且进行下载,接下来就是按照如下面的操作对相关的依赖进行安装。

yum install --downloadonly --downloaddir=/path/to/download/dir mongodb-org

可以使用yumdownloader工具来下载指定软件包及其依赖项的RPM包。将下载的MongoDB安装包以及相关依赖包复制到离线环境的某个目录中。使用yum命令手动安装所有下载的 RPM 包,如下所示。

yum install /path/to/download/dir/*.rpm

操作如下图所示

安装完成之后可以通过如下的操作,来启动MongoDB的服务

sudo systemctl start mongod

使用手动的方式创还能之后,通过上面的命令启动服务会出现Failed to start mongdb.service: Unit not found.的报错,需要手动的创建/usr/lib/systemd/system/mongod.service文件内容如下所示。

[Unit]
Description=MongoDB Database Server
After=network.target

[Service]
User=mongod
Group=mongod
ExecStart=/usr/bin/mongod --config /etc/mongod.conf
PIDFile=/var/run/mongodb/mongod.pid
ExecReload=/bin/kill -s HUP $MAINPID
Restart=always
RestartSec=5
Environment="OPTIONS=-f /etc/mongod.conf"

[Install]
WantedBy=multi-user.target

保存文件之后,运行如下的命令来重新加载systemd的服务单元列表。以便可以正常启动MongoDB服务。

sudo systemctl daemon-reload

完成上述操作之后,接下来就可以尝试启动。

sudo systemctl start mongod

配置允许Navicat连接到MongoDB服务器

默认情况下,MongoDB只允许本地连接。配置文件通常位于/etc/mongod.conf。编辑 MongoDB 的配置文件以允许远程连接。

在配置文件中查找 bindIp 选项。默认情况下,该选项被设置为 127.0.0.1,这意味着只允许本地连接。你需要将其修改为允许连接的 IP 地址或将其设置为 0.0.0.0,表示允许来自任何 IP 地址的连接。如下所示。

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # 允许来自任何 IP 地址的连接

配置完成之后通过如下的命令重启服务来使得配置生效。

sudo systemctl restart mongod

配置MongoDB用户

为了安全起见,需要在MongoDB中创建一个用户并授予适当的权限给Navicat连接。可以使用如下的命令在MongoDB中创建用户。

use admin
db.createUser({
  user: "myuser",
  pwd: "mypassword",
  roles: ["readWriteAnyDatabase"]
})

这将创建一个名为"myuser" 的用户,密码为 "mypassword",并赋予该用户对所有数据库的读写权限。根据需要,可以为该用户授予其他权限。

到这里,我们就完成了在Linux服务器上安装MongoDB的操作,安装想对来说比较简单。需要注意的就是对连接方式的配置以及在离线安装使用的时候对systemctl服务列表的更新操作。

最近发表
标签列表