Ubuntu20.04にMongoDBをインストールする方法

UbuntuシステムへのMongoDBのインストールと管理について知っておくべきことすべて

MongoDBは、Webアプリケーションの管理に使用されるNoSQLのオープンソースのドキュメント指向データベースです。従来のテーブルベースのデータベースのように事前定義されたスキーマを必要としないJSON形式のドキュメントにデータを動的に保存します。

この記事では、Ubuntu 20.04LTSシステムにMongoDBをインストールして構成する方法について説明します。

前提条件

始める前に、sudo対応ユーザーとしてログインし、以下に示すコマンドを発行して、サーバー上のパッケージを更新およびアップグレードします。

sudo apt update && sudo apt upgrade

Ubuntu20.04へのMongoDBのインストール

UbuntuマシンにMongoDBをインストールする方法は2つあります。まず、古いバージョンのMongoDB3.6を含むデフォルトのUbuntuリポジトリから。次に、MongoDBの専用パッケージリポジトリ(最新バージョンのMongoDB 4.4を含む)をに追加します。 apt システムのリソース。

MongoDB Incは、UbuntuリポジトリのmongoDBパッケージをサポートしていません。また、 mongodb-org パッケージ。そのため、MongoDBの専用パッケージリポジトリをに追加してMongoDBをインストールすることをお勧めします。 apt 資力。

公式リポジトリを追加してMongoDBをインストールする

まず、最新バージョンのMongoDBの公開GPGキーをインポートします。適切なキーを見つけるには、このURLにアクセスして、 サーバー-x.x.asc MongoDBの現在の最新バージョンに対応するファイル。

この記事を書いている時点で、MongoDBの最新バージョンは 4.4。そのため、それを選択し、以下のコマンドを使用してバージョン4.4のGPGキーをインポートします。

wget -qO-// www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-keyadd-

正常に実行されると、コマンドは次のように出力を返します。 わかった.

必要なので mongodb-org パッケージに最新バージョンのMongoDBをインストールするには、以下のコマンドを使用して、公式のMongoDBリポジトリをシステムに追加します。

echo "deb [arch = amd64、arm64] //repo.mongodb.org/apt/ubuntu focus / mongodb-org / 4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list

次に、ローカルパッケージデータベースを更新してインストールします mongodb-org 以下のコマンドを1つずつ実行してパッケージ化します。

sudo apt-get update -y sudo apt-get install mongodb-org -y

MongoDBをインストールしたら、起動して有効にします モンゴッド 以下のコマンドを使用して、システムでサービスを提供します。

systemctl start mongod systemctl enable mongod

システムでMongoDBが実行されていることを確認するには、以下のコマンドを使用します。ステータスをアクティブとして出力する必要があります。

systemctl status mongod
mongod.service-MongoDBデータベースサーバーロード済み:ロード済み(/lib/systemd/system/mongod.service;有効;ベンダーp>アクティブ:火曜日2020-08-18 09:01:48 UTC以降アクティブ(実行中); 45秒前ドキュメント://docs.mongodb.org/manualメインPID:13739(mongod)メモリ:79.1M CGroup:/system.slice/mongod.service└─13739/usr / bin / mongod --config /etc/mongod.conf 

次のコマンドを使用して、接続ステータス、現在のバージョン、サーバーアドレス、およびポートを確認することもできます。

mongo --eval'db.runCommand({connectionStatus:1}) '

接続状態が表示された場合 ok:1の場合、以下の出力に示すように、サーバーが適切に機能していることを意味します。

MongoDBシェルバージョンv4.2.8の接続先:mongodb://127.0.0.1:27017 /?compressors = disable&gssapiServiceName = mongodb暗黙のセッション:セッション{"id":UUID( "6ba987a2-30fc-4d84-8665-57f28b1bbfd9")} MongoDBサーバーバージョン:4.2.8 {"authInfo":{"authenticatedUsers":[]、 "authenticatedUserRoles":[]}、 "ok":1}

MongoDBのデフォルトのポート番号は 27017、実行中 127.0.0.1、ローカルホストのループバックアドレスです。

MongoDBの構成

ニーズを満たすにはデフォルトの構成設定で十分であるため、MongoDBの構成はオプションですが、実稼働環境では、認証を有効にすることをお勧めします。

MongoDBの構成ファイルは /等 ディレクトリ。編集するには、ターミナルで次のコマンドを入力します。

nano /etc/mongod.conf

次に、ファイルの一番下に移動し、セキュリティオプションを削除して、セキュリティオプションのコメントを解除します。 # 記号とタイプ 承認:有効 以下に示すように。

セキュリティ:承認:有効

次のコマンドでMongoDBを再起動して、変更を適用します。

systemctl restart mongod

MongoDBの構成の詳細については、このドキュメントページにアクセスしてください。

MongoDBAdministratorの作成と検証

次に、MongoDBデータベースにアクセスできる管理者ユーザーを作成します。

MongoDB管理者の作成

MongoDBシェルにアクセスするには、 モンゴ 指図。

モンゴ

次に、次のコマンドを使用してMongoDB管理データベースにアクセスします。

管理者を使用する

次のコマンドを使用して、ロールを持つ新しいユーザーとパスワードを作成します userAdminAnyDatabase.

db.createUser({user: "UserName"、pwd: "PasswordOfYourChoice"、roles:[{role: "userAdminAnyDatabase"、db: "admin"}]})

ノート: ユーザーの値を置き換えます(ユーザー名)とパスワード(passwordOfYourChoice)あなたの選択に。

MongoDBユーザーを正常に作成したら、次のように入力します 終了する() シェルを終了します。

終了する()

管理者認証を確認する

認証を確認するには、以下のコマンドで管理者アカウントにアクセスします。

mongo -u UserName -p --authenticationDatabase admin

シェルは、パスワードの入力を求めるプロンプトを表示します。上記の手順でユーザー用に選択したパスワードを入力し、 入力.

次に、次のコマンドでadminデータベースにアクセスします。

管理者を使用する

今、発行します ユーザーに表示 認証されたすべてのユーザーの詳細をフェッチするためのシェルのコマンド。

ユーザーに表示
{"_id": "admin.UserName"、 "userId":UUID( "d5e186d7-0520-41a5-8f42-da3b7b8e8868")、 "user": "UserName"、 "db": "admin"、 "roles": [{"role": "userAdminAnyDatabase"、 "db": "admin"}]、 "メカニズム":["SCRAM-SHA-1"、 "SCRAM-SHA-256"]}

上記の手順で作成したユーザー名が出力に表示されます。

MongoDBの管理

モンゴッドプロセスを管理するために、組み込みを使用します 初期化 Ubuntuのシステム。 16.04XenialからのUbuntuバージョン systemd を使用するMongoDBを管理する systemctl 指図。

モンゴッドサービスを停止します

停止するには モンゴッド プロセス、次のコマンドを使用します。

sudo systemctl stop mongod

モンゴッドサービスを開始

開始するには モンゴッド プロセス、次のコマンドを使用します。

sudo systemctl start mongod

Mongodを再起動します

再起動するには モンゴッド プロセス、次のコマンドを使用します。

sudo systemctl restart mongod

Ubuntu20.04マシンに最新バージョンのMongoDBが正常にインストールされました。 MongoDBの詳細については、このドキュメントを参照してください。