如何在Ubuntu 16.04上安装和配置MongoDB

MongoDB是一个NoSQL数据库,提供高性能,高可用性和自动扩展的企业数据库。 MongoDB是一个NoSQL数据库,因此您不能使用SQL(结构化查询语言)来插入和检索数据,并且不会将数据存储在MySQL或Postgres等表中。 数据以JSON格式存储在“文档”结构中(在MongoDB中称为BSON)。 MongoDB于2009年首次推出,目前由MongoDB Inc.开发。

MongoDB仅提供64位LTS(长期支持)Ubuntu版本的软件包,例如12.04 LTS(精确),14.04 LTS(可信赖),16.04 LTS(xenial)等。 mongodb站点

先决条件

  • Ubuntu Server 16.04 - 64位
  • 根权限

我们将在本教程中做什么:

  1. 安装MongoDB
  2. 配置MongoDB
  3. 结论

在Ubuntu 16.04上安装MongoDB

第1步 - 导入公钥

Ubuntu软件包管理器apt(高级软件包工具)需要软件分销商的GPG密钥,以确保软件包的一致性和真实性。 运行此命令将MongoDB密钥导入服务器。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

第2步 - 创建源列表文件MongoDB

使用此命令在/etc/apt/sources.list.d/中创建MongoDB列表文件:

echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

第3步 - 更新存储库

使用apt命令更新存储库:

sudo apt-get update

第4步 - 安装MongoDB

现在您可以通过键入以下命令安装MongoDB:

sudo apt-get install -y mongodb-org

我们必须在'/ lib / systemd / system'目录中创建一个新的mongodb systemd服务文件。 转到该目录,并使用vim创建新的mongodb服务文件'mongod.service'。

cd /lib/systemd/system/
vim mongod.service

粘贴脚本如下:

[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
Documentation=https://docs.mongodb.org/manual

[Service]
User=mongodb
Group=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf

[Install]
WantedBy=multi-user.target

保存文件并退出。

现在使用以下命令更新systemd服务:

systemctl daemon-reload

启动mongodb并将其添加为启动时启动的服务:

系统启动mongod 
systemctl启用mongod

现在检查mongodb是否已经通过netstat命令在端口27017上启动。

netstat -plntu

配置MongoDB用户名和密码

当安装MongoDB软件包时,您可以配置数据库服务器的用户名和密码:

第1步 - 打开mongo shell

在为MongoDB设置用户名和密码之前,需要在服务器上打开mongodb shell。 您可以输入以下内容登录:

mongo

如果您收到错误全局初始化失败:BadValue无效或无用户区域设置。 请确保LANG和/或LC_ *环境变量设置正确 ,请尝试使用以下命令:

export LC_ALL=C
mongo

第2步 - 切换到数据库管理员

一旦你在MongoDB shell中,切换到名为admin的数据库:

use admin

第3步 - 创建root用户

使用此命令创建root用户:

db.createUser({user:"admin", pwd:"admin123", roles:[{role:"root", db:"admin"}]})

描述:创建用户admin ,密码为admin123 ,权限/角色为root,数据库为admin

现在键入exit退出MongoDB shell。

第4步 - 启用mongodb身份验证

编辑mongodb服务文件'/lib/systemd/system/mongod.service'

vim /lib/systemd/system/mongod.service

在“ ExecStart ”行9上,添加新选项“ --auth ”。

ExecStart=/usr/bin/mongod --quiet --auth --config /etc/mongod.conf

保存并退出。

重新加载systemd服务:

systemd daemon-reload

第5步 - 重新启动MongoDB并尝试连接

现在重新启动MongoDB并与用户创建连接。

sudo service mongod restart

并使用以下命令连接到mongodb shell:

mongo -u admin -p admin123 --authenticationDatabase admin

你会看到这样的输出:

结论

MongoDB提供了高性能,高可用性和自动扩展功能的着名NoSQL数据库。 它与RDBMS不同,如MySQL,PostgreSQL和SQLite,因为它不使用SQL来设置和检索数据。 MongoDB将数据存储在`document`中,称为BSON (JSON的二进制表示形式,附加信息类型)。 MongoDB仅适用于64位长期支持Ubuntu版本。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏