MongoDB 专题
您的位置:database > MongoDB专题 > MongoDB安装配置(Ubuntu)
MongoDB安装配置(Ubuntu)
作者:--    发布时间:2019-11-20

本教程将介绍和演示如何在.deb包上的lts ubuntu linux系统上安装 mongodb 社区版。 虽然 ubuntu 包含自己的 mongodb 软件包,但官方 mongodb 社区版软件包通常是更新的。

平台支持:mongodb仅提供64位lts(长期支持)ubuntu版本的软件包。 例如,12.04 lts(精确),14.04 lts(可信赖),16.04 lts(xenial)等。 这些软件包可能与其他ubuntu版本一起使用,但是它们不受支持。

mongodb-org-server 包提供了一个使用 /etc/mongod.conf 配置文件启动 mongod 的初始化脚本。

这些包与ubuntu提供的 mongodbmongodb-servermongodb-clients 包冲突。由软件包提供的默认的 /etc/mongod.conf 配置文件的 bind_ip 默认设置为 127.0.0.1 。 在初始化副本集之前,根据环境的需要修改此设置。

mongodb仅提供 64位lts(长期支持)ubuntu版本的软件包。 例如,12.04 lts14.04 lts16.04 lts(xenial)等。这些软件包可能与其他 ubuntu 版本一起使用,但是它们不受支持。

1.安装mongodb社区版

下面我们来看看在 ubuntu(16.04 lts) 上安装 mongodb 的步骤 -

第一步:导入包管理系统使用的公钥

ubuntu软件包管理工具(即dpkgapt)通过要求分销商使用gpg密钥对软件包进行签名来确保软件包的一致性和真实性。发出以下命令导入mongodb公共gpg密钥

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0c49f3730359a14518585931bc711f9ba15703c6

第二步:为mongodb创建一个列表文件

首先要确定所使用的ubuntu系统的版本,要查看当前的内核版本,请打开终端并键入uname -r命令以查看内核版本:

查看内核版本命令如下:

h3@ubuntu:~$ uname -r
4.4.0-31-generic
h3@ubuntu:~$

查看操作系统是32位还是64位:

h3@ubuntu:~$ sudo uname --m
[sudo] password for h3:
x86_64
h3@ubuntu:~$

查看 ubuntu 版本 -

h3@ubuntu:~$ sudo lsb_release -a
no lsb modules are available.
distributor id: ubuntu
description:    ubuntu 16.04.1 lts
release:        16.04
codename:       xenial
h3@ubuntu:~$

使用适合您的ubuntu版本的命令创建 /etc/apt/sources.list.d/mongodb-org-3.4.list 列表文件:

ubuntu 14.04

$ echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

ubuntu 16.04

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

第三步:重新加载本地包数据库

发出以下命令重新加载本地软件包数据库:

$ sudo apt-get update

注意:上面的安装过程可能会比较久,如果你的网络比较慢,请耐心一点等待吧。

遇到问题:

第四步:安装mongodb包

安装最新的稳定版本的mongodb。发出以下命令:

$ sudo apt-get install -y mongodb-org

2.运行mongodb

大多数类unix操作系统限制会话,因为它们可能使用的系统资源。 这些限制可能会对 mongodb 操作产生负面影响。 有关详细信息,请参阅unix ulimit设置

mongodb 实例默认将其数据文件存储在 /var/lib/mongodb 及其日志文件在 /var/log/mongodb 中,并使用 mongodb 用户帐户运行。可以在 /etc/mongod.conf 中指定备用日志和数据文件目录。有关其他信息,请参阅 systemlog.pathstorage.dbpath

如果更改运行 mongodb 进程的用户,则可通过修改 /var/lib/mongodb/var/log/mongodb 目录的访问控制权限,以使该用户能够访问这些目录。

启动 mongodb

发出以下命令启动 mongodb:

$ sudo service mongod start

验证mongodb是否已成功启动

通过检查 /var/log/mongodb/mongod.log 中的日志文件的内容来验证 mongod 进程是否已成功启动,日记文件中应该有类似下面的行内容 -

... 
2017-06-28t21:17:26.292-0700 i control  [initandlisten]
2017-06-28t21:17:26.341-0700 i ftdc     [initandlisten] initializing full-time diagnostic data capture with directory '/var/lib/mongodb/diagnostic.data'
2017-06-28t21:17:26.366-0700 i index    [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" }
2017-06-28t21:17:26.366-0700 i index    [initandlisten]          building index using bulk method; build may temporarily use up to 500 megabytes of ram
2017-06-28t21:17:26.367-0700 i index    [initandlisten] build index done.  scanned 0 total records. 0 secs
2017-06-28t21:17:26.368-0700 i command  [initandlisten] setting featurecompatibilityversion to 3.4
2017-06-28t21:17:26.368-0700 i network  [thread1] waiting for connections on port 27017

使用 mongodb 命令测试 -

h3@ubuntu:~$ mongo
mongodb shell version v3.4.5
connecting to: mongodb://127.0.0.1:27017
mongodb server version: 3.4.5
welcome to the mongodb shell.
for interactive help, type "help".
for more comprehensive documentation, see
        http://docs.mongodb.org/
questions? try the support group
        http://groups.google.com/group/mongodb-user
server has startup warnings:
2017-06-28t21:17:26.133-0700 i storage  [initandlisten]
2017-06-28t21:17:26.133-0700 i storage  [initandlisten] ** warning: using   ..... .....
mm/transparent_hugepage/defrag is 'always'.
2017-06-28t21:17:26.292-0700 i control  [initandlisten] **        we suggest set                                                                                        ting it to 'never'
2017-06-28t21:17:26.292-0700 i control  [initandlisten]
## 使用几个命令
> show dbs
admin  0.000gb
local  0.000gb
>
> db
test
> use test
switched to db test
>

停止mongodb

根据需要,可以通过发出以下命令来停止 mongod 进程:

$ sudo service mongod stop

重新启动mongodb

发出以下命令重新启动 mongod:

$ sudo service mongod restart

网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册