MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

Ubuntu 16.04にMongoDBをインストールする手順と自動起動の設定方法


MongoDBは、クロスプラットフォーム対応のドキュメント指向データベースです。高いパフォーマンス、高可用性、そして容易なスケーラビリティを備えており、「コレクション」と「ドキュメント」という概念に基づいて動作します。なお、執筆時点ではUbuntu 16.04向けの公式MongoDBパッケージはまだ提供されていませんでした。本記事では、UbuntuにMongoDBをインストールし、システム起動時にMongoDBサービスが自動的に開始されるよう設定する手順について解説します。

MongoDBリポジトリの追加

Ubuntuの標準パッケージリポジトリにもMongoDBは含まれていますが、公式のMongoDBリポジトリを利用することで、推奨された形で常に最新バージョンを入手できます。

まず、以下のコマンドを実行して、公式MongoDBリポジトリのGPGキーをインポートします。

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

実行すると、以下のような出力が表示されます。

Executing: /tmp/tmp.Qe1RFZgUh2/gpg.1.sh --keyserver
hkp://keyserver.ubuntu.com:80
--recv
EA312927
gpg: requesting key EA312927 from hkp server keyserver.ubuntu.com
gpg: key EA312927: public key "MongoDB 3.2 Release Signing Key <packaging@mongodb.com>" imported
gpg: Total number processed: 1
gpg:                imported: 1 (RSA: 1)

続いて、以下のコマンドでMongoDBリポジトリを追加します。

$ sudo echo "deb https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

次に、以下のコマンドでパッケージリストを更新します。

$ sudo apt-get update

MongoDBのインストールと確認

以下のコマンドでMongoDBをインストールします。

$ sudo apt-get install -y --allow-unauthenticated mongodb-org

実行すると、以下のような出力が表示されます。

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
   apport-hooks-elementary contractor javascript-common libgda-5.0-4
   libgda-5.0-common libgranite-common libgranite3 libgsignon-glib1
   libindicate5 libjs-jquery libnoise-core0 libtagc0
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
   mongodb-org-mongos mongodb-org-server mongodb-org-shell mongodb-org-tools
The following NEW packages will be installed:
   mongodb-org mongodb-org-mongos mongodb-org-server mongodb-org-shell
   mongodb-org-tools
0 upgraded, 5 newly installed, 0 to remove and 168 not upgraded.
Need to get 47.4 MB of archives.
After this operation, 218 MB of additional disk space will be used.
Get:1 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2/multiverse amd64 mongodb-org-shell amd64 3.2.6 [5,257 kB]
Get:2 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2/multiverse amd64 mongodb-org-server amd64 3.2.6 [9,541 kB]
Get:3 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2/multiverse amd64 mongodb-org-mongos amd64 3.2.6 [4,337 kB]
...................................................................................

Ubuntu 16.04でMongoDBをサービスとして正しく起動するには、サービスを記述したユニットファイルを追加で作成する必要があります。ユニットファイルとは、システムがリソースをどのように管理するかを定義するファイルのことです。最も一般的なユニットタイプは「service」であり、サービスの起動・停止の方法を決定します。

以下のように、mongodb.serviceという名前の設定ファイルを作成してユニットファイルをセットアップします。

$ sudo nano /etc/systemd/system/mongodb.service

次のコードを貼り付けて保存してください。

[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target

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

[Install]
WantedBy=multi-user.target

新しく作成したサービスを、systemctlコマンドを使って以下のように起動します。

$ sudo systemctl start mongodb

通常、このコマンドは何も出力を返しません。そこで、サービスが正しく起動しているかどうかを確認しましょう。以下のコマンドを実行します。

$ sudo systemctl status mongodb

実行すると、以下のような出力が表示されます。

mongodb.service - High-performance, schema-free document-oriented database
   Loaded: loaded (/etc/systemd/system/mongodb.service; disabled; vendor preset:
   Active: active (running) since Fri 2016-05-13 10:33:52 IST; 1min 48s ago
Main PID: 7078 (mongod)
   Tasks: 16 (limit: 512)
   CGroup: /system.slice/mongodb.service
            └─7078 /usr/bin/mongod --quiet --config /etc/mongod.conf

May 13 10:33:52 linux systemd[1]: Started High-performance, schema-free document
lines 1-9/9 (END)

システム起動時にMongoDBが自動的に起動されるように設定するには、以下のコマンドを使用します。

$ sudo systemctl enable mongodb

実行すると、以下のような出力が表示されます。

Created symlink from /etc/systemd/system/multi-user.target.wants/mongodb.service to /etc/systemd/system/mongodb.service.

この記事を読み終える頃には、Ubuntu 16.04にMongoDBをインストールする方法をしっかり理解できているはずです。今後もLinuxに関する便利なテクニックやヒントをお届けしていきますので、ぜひお楽しみに!


  1. UbuntuにPipをインストールする方法を徹底解説【Python 2/3対応】

    Linuxには実に多くのパッケージマネージャーが存在します。Ubuntuにはaptが標準搭載されていますが、プログラミング言語の多くも独自のパッケージマネージャーを持っています。Node.jsにはnpm、Rubyにはgem、そしてPythonにはpipが用意されています。 Pipは「Python Installs Packages」の略で、Python Package Index(PyPI)からパッケージを簡単にインストールできるツールです。他のインデックスからインストールすることも可能ですが、通常必要となるパッケージの大半はPyPIで入手できます。pipを使ってパッケージを導入するには、ま

  2. Windows 10 / 11 に Ubuntu をインストールする3つの方法【WSL・USB起動・仮想マシン】

    Windows 10 や Windows 11 のパソコンで Ubuntu Linux を使ってみたいと思ったことはありませんか?この記事では、その手順を初心者の方にもわかりやすく解説します。 実は、Windows 上で Ubuntu をインストールして動かす方法はひとつだけではありません。本記事では、代表的な3つのアプローチをご紹介します。① Windows Subsystem for Linux(WSL)を使って Linux コマンドを実行する方法、② USB メモリから直接起動する方法、そして③ 仮想マシン(VM)上で動かす方法です。 それぞれの特徴と手順を順番に見ていきましょう。 方法