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

MongoDB只提供64位LTS(长期支持)Ubuntu版本的软件包。 例如,14.04 LTS(可信),16.04 LTS(x)),18.04 LTS(bionic)等。

在本教程中,我将在Ubuntu 18.04 LTS上安装MongoDB 3.6。

先决条件

  • Ubuntu服务器18.04 – 64位
  • Root权限

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

  • 安装MongoDB
  • 配置MongoDB
  • 结论

在Ubuntu 18.04上安装MongoDB

第1步 – 导入公钥

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

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

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

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

echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list

MongoDB尚未发布Bionic Beaver软件包,但Xenial软件包在Ubuntu 18.04 LTS上运行良好。 尽管在执行上述命令之前,您可能会检查URL http://repo.mongodb.org/apt/ubuntu/dists/。 如果您在该网页上看到一个目录“bionic”,则将上述命令中的单词“xenial”替换为“bionic”一词。

第3步 – 更新存储库

使用apt命令更新存储库:

sudo apt-get update

第4步 – 安装MongoDB

现在你可以输入以下命令来安装MongoDB:

sudo apt-get install -y mongodb-org

MongoDB apt安装程序自动为Systemd创建了一个mongod.service文件,因此不需要再手动创建它。

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

systemctl start mongod
systemctl enable mongod

现在用netstat命令检查MongoDB是否已经在端口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"}]})

描述:使用密码admin123创建用户管理员,并将权限/角色作为root用户,数据库为admin。

现在输入exit退出MongoDB shell。

第4步 – 启用mongodb身份验证

用您的编辑器编辑mongodb服务文件’/lib/systemd/system/mongod.service’。

nano /lib/systemd/system/mongod.service

在’ExecStart’第9行中,添加新选项’–auth’。

ExecStart=/usr/bin/mongod –auth –config /etc/mongod.conf

保存该服务文件并退出nano。

重新加载systemd服务:

systemctl daemon-reload

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

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

sudo service mongod restart

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

mongo -u admin -p admin123 --authenticationDatabase admin

你会看到这样的输出:

虚拟机映像

本教程适用于Howtoforge用户可以使用OVA / OVF格式的虚拟机。 VM格式与VMWare和Virtualbox以及其他可以导入ova或ovf格式的工具兼容。您可以在顶部的右侧菜单中找到下载链接。点击文件名开始下载。

The login details of the VM are:

SSH登录

用户名:administrator
密码:howtoforge

管理员用户具有sudo权限。

第一次启动后请更改密码。

VM配置为静态IP 192.168.1.100。有关如何更改静态IP的说明可以在此处找到。

结论

一个着名的NoSQL数据库,提供高性能,高可用性和自动扩展是MongoDB。它不同于RDBMS,如MySQL,PostgreSQL和SQLite,因为它不使用SQL来设置和检索数据。 MongoDB将数据存储在名为BSON的文档中(JSON的二进制表示以及其他类型的信息)。 MongoDB仅适用于64位长期支持Ubuntu版本。

更多MongoDB相关教程见以下内容

在 Azure 虚拟机上快速搭建 MongoDB 集群  http://www.linuxidc.com/Linux/2017-09/146778.htm

MongoDB复制集原理  http://www.linuxidc.com/Linux/2017-09/146670.htm

MongoDB 3.4 远程连接认证失败  http://www.linuxidc.com/Linux/2017-06/145070.htm

Ubuntu 16.04中安装MongoDB3.4数据库系统  http://www.linuxidc.com/Linux/2017-07/145526.htm

MongoDB权威指南第2版PDF完整带书签目录 下载见 http://www.linuxidc.com/Linux/2016-12/138253.htm

MongoDB 的详细介绍请点这里
MongoDB 的下载地址请点这里

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-05/152253.htm

如何在Ubuntu 18.04 LTS上安装和配置MongoDB的更多相关文章

  1. Ubuntu 18.04 LTS上安装NFS服务器和客户端

    NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器.操作系统以及低层传送协议无关的存取远程文件的操作.RPC采用了XDR的支持.XDR是一种与机器无关的 ...

  2. 10分钟学会在Ubuntu 18.04 LTS上安装NFS服务器和客户端

    https://www.linuxidc.com/Linux/2018-11/155331.htm

  3. 在Ubuntu 18.04系统上安装Systemback的方法(抄)

    在Ubuntu 18.04系统上安装Systemback的方法 2018-12-26 21:39:05作者:林莉稿源:云网牛站 本文介绍如何在Ubuntu 18.04或者Ubuntu 18.10系统上 ...

  4. Ubuntu 18.04 Linux上安装Etherpad,基于Web的实时协作编辑器

    介绍 Etherpad是一个开源的,基于Web的实时协作编辑器(http://www.0834nanke.com) 它允许多个人使用他们的Web浏览器同时编辑文档. 它还提供了一些很酷的功能,如富文本 ...

  5. 【转】如何在Ubuntu 14.04 LTS上设置Nginx虚拟主机

    介绍 转自http://www.pandacademy.com/%E5%A6%82%E4%BD%95%E5%9C%A8ubuntu-14-04-lts%E4%B8%8A%E8%AE%BE%E7%BD% ...

  6. 在Ubuntu 18.04系统上安装Pydio Cells详细图文教程

    前言   基于云的协作工具Pydio cell提供了一系列灵活的特性,包括应用内消息传递.文件共享和版本控制.下面逐步介绍安装过程. Pydio cell最初是一个简单的基于云的文件共享系统,但经过升 ...

  7. Ubuntu 18.04 Server上安装LAMP

    由于要进行渗透测试,所以这两天就在搭LAMP的环境(过程及其痛苦) 这里分享一些我遇到的问题. 首先介绍一下我的使用环境  VM虚拟机,ubuntu 与主机NAT连接 由于之前一直使用的是kali(默 ...

  8. 在 Ubuntu 16.04 LTS 上安装 Python 3.6.0

    原文连接:https://segmentfault.com/a/1190000007912666 最近 Python 3 发布了新版本 Python 3.6.0,好像又加入了不少黑魔法!- 由于暂时不 ...

  9. 在 Ubuntu 18.04 /centos7上安装 Python 3.7

    扩展源安装 sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:deadsn ...

随机推荐

  1. SqlServer 局域网内不能连接对方数据库?

    一直都是连接的远程测试服务器的数据库,今天想把自己的数据库开放出来让公司同事连接,竟然连接失败!转了很大一个圈终于搞定了. 接下来就把这次心历路程发出来,希望能帮助到有需要的博友. PS: 我和同事的 ...

  2. 2020ICPC上海站 C. Sum of Log

    题目大意: 给定T组X,Y,对于每组X,Y,求上面式子   的值,其中  当x为真时等于1,其他情况等于0. 其中. 思路: 对X,Y一起进行数位DP,我们把每一位枚举数字的上限以及数字之前是否有前导 ...

  3. 进程&线程(一)——multiprocessing,threading

    本节内容为①进程线程的基础知识:②在Python的实现方法: 学习总结自: 一文看懂Python多进程与多线程编程(工作学习面试必读) - 知乎 multiprocessing 官方文档 1.进程线程 ...

  4. Docker安装与基本命令使用

    1. 卸载旧版本 Docker在CentOS上的安装 官方文档:https://docs.docker.com/engine/install/centos/ sudo yum remove docke ...

  5. vue项目启动报错 spawn cmd ENOENT errno: -4058

    vue项目启动报错 spawn cmd ENOENT errno: -4058 运行vue项目(npm run dev)报错 提示 'npm' 不是内部或外部命令 cmd输入node -v 有版本号 ...

  6. Block对变量的引用

    如果在 Block 内部使用外部的变量,Block 会持有这个变量.下面来看几中特殊的情况,看 Block 对变量的持有情况如何. typeof @interface X : NSObject @pr ...

  7. 『现学现忘』Docker基础 — 27、Docker镜像的commit操作

    目录 1.commit命令作用 2.commit命令说明 3.示例演示 1.commit命令作用 在运行的容器中,并在镜像的基础上做了一些修改,我们希望保存起来,封装成一个新的镜像,方便我们以后使用, ...

  8. kdump原理,是如何找到入口的

    请解释下kdump原理,捕获内核是如何获取到生产内核的首地址的.

  9. 题解0007:小木棍(P1120)

    (错误记录) 题目链接:https://www.luogu.com.cn/problem/P1120 题目描述:几根同样长的木棍,小冥把它们随意砍成了n段: 然后他又吃饱了撑的想把木棍拼上: 但是这个 ...

  10. 【Python 第0课】Why Python?

    为什么用Python作为编程入门语言? 原因很简单. 嗯...原因就是,很简单... 每种语言都会有它的支持者和反对者.去Google一下"why python"(程序员准则:要G ...