MongoDB は、フリーでオープンソースのドキュメント データベースです。 これは、MySQL や PostgreSQL のような伝統的なテーブルベースの SQL データベースとは異なる、NoSQL と呼ばれるデータベース群に属します。
MongoDB では、データは柔軟で JSON に似たドキュメントに保存され、フィールドはドキュメントごとに異なることがあります。
このチュートリアルでは、Ubuntu 18.04 マシンに、MongoDB の公式リポジトリから最新バージョンの MongoDB Community Edition をインストールし設定する手順について説明します。
MongoDBのインストール #
この記事を書いている時点では、MongoDBの最新バージョンはバージョン 4.0 です。
インストール作業を続ける前に、MongoDBのドキュメント内の Install on Ubuntusection に移動して、新しいリリースがあるかどうかを確認します。
次の手順は、Ubuntu サーバーに MongoDB をインストールする方法を説明します。
-
次のコマンドを使用してシステムに MongoDB GPG キーを追加します。
古いバージョンの MongoDB をインストールするには、
4.0
をお好みのバージョンに置き換えてください。 -
パッケージリストを更新し、
mongodb-org
メタパッケージをインストールするには次のようにタイプしてください。 -
mongodb-org-mongos
–mongos
デーモン。 -
mongodb-org-shell
– mongo shell は MongoDB への対話的な JavaScript インターフェイスです。 -
mongodb-org-tools
– データのインポートやエクスポート、統計、その他のユーティリティを行うための MongoDB ツールがいくつか含まれています。 -
インストールが完了したら、MongoDB デーモンを起動し、起動時に起動するようにタイプして有効にしてください。
sudo systemctl start mongod
sudo systemctl enable mongod
-
インストールが正常に完了したかどうかを確認するために、
mongo
ツールを使用してMongoDBデータベースサーバーに接続し、接続状態を出力します:mongo --eval 'db.runCommand({ connectionStatus: 1 })'
出力は次のようになります:
ok
フィールドの値1
は成功を表します。
MongoDBの設定 #
MongoDBはYAML形式の設定ファイル、/etc/mongod.conf
を使用します。
ほとんどのユーザーは、デフォルトの設定で十分です。 しかし、実稼働環境では、次のようにセキュリティセクションのコメントを解除し、認証を有効にすることをお勧めします。
security: authorization: enabled
authorization
オプションは、ユーザーのデータベースリソースと操作へのアクセス制御を行う役割ベースのアクセス制御 (RBAC) を有効にするものです。 このオプションを無効にすると、各ユーザーはすべてのデータベースにアクセスでき、あらゆるアクションを実行できます。
MongoDB 設定ファイルを変更したら、
sudo systemctl restart mongod
MongoDB 4.X で利用できる設定オプションの詳細情報を確認するには、mongod サービスを再起動します。
Creating Administrative MongoDB User #
MongoDB 認証を有効にした場合、MongoDB インスタンスにアクセスして管理するのに使う管理 MongoDB ユーザーを作成します。
最初に、次のコマンドで mongo シェルにアクセスします。
mongo
一度 MongoDB シェルに入ったら、次のコマンドを入力して admin
データベースに接続します。
use admin
switched to db admin
次のコマンドを実行して、userAdminAnyDatabase
ロールでmongoAdmin
という新しいユーザーを作成します:
db.createUser( { user: "mongoAdmin", pwd: "changeMe", roles: })
Successfully added user: {"user" : "mongoAdmin","roles" : }
Exit the mongo shell with:
quit()
Test the changes, access the mongo shell using the administrative user you have previously created:
mongo -u mongoAdmin -p --authenticationDatabase admin
use admin
switched to db admin
Now, print the users with.で終了して下さい。
show users
{"_id" : "admin.mongoAdmin","user" : "mongoAdmin","db" : "admin","roles" : ,"mechanisms" : }
また、引数なしで mongo シェルにアクセスして(単に mongo
と入力して)、上記と同じコマンドを使用してユーザーを一覧表示できるかどうか試してみることもできます。
まとめ #
ここまでで、Ubuntu 18.04 サーバーに MongoDB 4.0 をインストールし設定する方法を学びました。 このトピックの詳細については、MongoDB 4.0 のマニュアルを参照してください。