介绍
MongoDB是一个免费的开源NoSQL文档数据库,在现代Web应用程序中常用。本教程将帮助您在服务器上为生产应用程序环境设置MongoDB。
要学习本教程,您需要:
一台已经设置好可以使用sudo
命令的非root账号的Ubuntu服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。
MongoDB已包含在Ubuntu软件包存储库中,但官方MongoDB存储库提供了最新版本,是推荐的软件安装方式。在此步骤中,我们将此官方存储库添加到我们的服务器。
Ubuntu通过验证它们是否使用GPG密钥签名来确保软件包的真实性,因此我们首先必须将它们的密钥导入官方MongoDB存储库。
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
成功导入密钥后,您将看到:
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
接下来,我们必须添加MongoDB存储库详细信息,以便apt
知道从哪里下载软件包。
发出以下命令为MongoDB创建列表文件。
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
添加存储库详细信息后,我们需要更新软件包列表。
sudo apt-get update
现在我们可以自己安装MongoDB包。
sudo apt-get install -y mongodb-org
此命令将安装包含最新稳定版MongoDB的多个软件包以及MongoDB服务器的有用管理工具。
接下来,用systemctl
启动MongoDB 。
sudo systemctl start mongod
您还可以使用systemctl
检查服务是否已正确启动。
sudo systemctl status mongod
● mongodb.service - High-performance, schema-free document-oriented database
Loaded: loaded (/etc/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2016-04-25 14:57:20 EDT; 1min 30s ago
Main PID: 4093 (mongod)
Tasks: 16 (limit: 512)
Memory: 47.1M
CPU: 1.224s
CGroup: /system.slice/mongodb.service
└─4093 /usr/bin/mongod --quiet --config /etc/mongod.conf
最后一步是在系统启动时启用MongoDB。
sudo systemctl enable mongod
MongoDB服务器现已配置并运行,您可以使用该systemctl
命令管理MongoDB服务(例如sudo systemctl stop mongod
,sudo systemctl start mongod
)。
假设您已在服务器上启用防火墙,则无法从Internet访问MongoDB服务器。
如果您打算仅在本地使用MongoDB服务器与在同一服务器上运行的应用程序,则建议使用安全设置。但是,如果您希望能够从Internet连接到MongoDB服务器,我们必须在ufw
中允许传入连接。
要允许27017
从任何地方访问默认端口上的MongoDB ,您可以使用sudo ufw allow 27017
。但是,在默认安装上启用对MongoDB服务器的Internet访问可以不受限制地访问整个数据库服务器。
在大多数情况下,只能从某些受信任的位置访问MongoDB,例如托管应用程序的另一台服务器。要完成此任务,您可以允许访问MongoDB的默认端口,同时指定将明确允许连接的另一台服务器的IP地址。
sudo ufw allow from your_other_server_ip/32 to any port 27017
您可以使用以下ufw
命令验证防火墙设置的更改。
sudo ufw status
您应该看到输出中27017
允许的端口流量。如果您决定只允许某个IP地址连接到MongoDB服务器,则将在输出中列出允许位置的IP地址而不是Anywhere。
Status: active
To Action From
-- ------ ----
27017 ALLOW Anywhere
OpenSSH ALLOW Anywhere
27017 (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
您已经成功在Ubuntu 16.04上成功安装了MongoDB了。
更多Ubuntu教程请前往腾讯云+社区学习更多知识。
参考文献:《How to Install MongoDB on Ubuntu 16.04》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有