MongoDBインストール · 2 min read · Sep 18, 2025
AlmaLinux 9にMongoDBをインストールする方法

MongoDBはオープンソースのクロスプラットフォームで分散型のNoSQL(非SQLまたは非リレーショナル)データベースシステムです。従来のSQLデータベースのようにデータをテーブルに格納するのではなく、MongoDBは柔軟なドキュメントを使用してさまざまなデータ形式を格納します。MongoDBはデータを格納するためにバイナリJSON形式であるBSONを使用します。
MongoDBは、高可用性、自動フェイルオーバー、データ冗長性を備えた分散型NoSQLデータベースであり、分散クラスター全体でシャーディングによる水平スケーリングを提供します。マルチリージョンの地理的展開をサポートし、CRUD操作(読み取りおよび書き込み)、データ集約パイプライン、テキスト検索、地理空間クエリをサポートするクエリAPIを提供します。
このガイドでは、Alma Linux 9サーバーにMongoDBをインストールする方法を示します。また、MongoDBの認証を有効にし、MongoDBの管理者ユーザーを設定し、アプリケーション用の新しいデータベースとユーザーを作成します。
前提条件
このガイドを始める前に、以下のものを用意してください:
- Alma Linux 9サーバー
- 管理者権限を持つ非ルートユーザー
システムの準備(thpの無効化、ulimitの設定、sysctl.confの設定)
このセクションでは、MongoDBのインストールのためにALma Linuxサーバーを準備し、設定します。以下は、実行する必要がある3つの主要なステップです:
- systemdサービスを介して透明な巨大ページ(THP)を無効にする
- ‘mongod’ユーザーの最大プロセス数とオープンファイル数を増やす
- ‘/etc/sysctl.conf’ファイルを介してvm-max fsを設定する
まず、以下の’dnf’コマンドを実行して、Alma Linuxシステムに’nano’テキストエディタをインストールします。
sudo dnf install nano -y透明な巨大ページ(THP)の無効化
新しいサービスファイル’ /etc/systemd/system/disable-thp.service ‘を作成して、透明な巨大ページ(THP)を無効にします。このサービスは、システムの起動時に毎回実行されます。
sudo nano /etc/systemd/system/disable-thp.serviceファイルに以下の設定を挿入します。
[Unit]
Description=透明な巨大ページ(THP)を無効にする
[Service]
Type=simple
ExecStart=/bin/sh -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag"
[Install]
WantedBy=multi-user.target完了したら、ファイルを保存して終了します。
次に、以下の’systemctl‘コマンドを実行して、systemdマネージャーをリロードし、変更を適用します。
sudo systemctl daemon-reload最後に、以下のコマンドを使用して’disable-thp.service‘を開始および有効にします。これにより、THPは起動時に自動的に無効になります。
sudo systemctl enable --now disable-thp.service
ulimitsの設定
新しい設定’ /etc/security/limits.d/mongodb.conf ‘を作成します。
sudo nano /etc/security/limits.d/mongodb.confファイルに以下の設定を挿入します。これにより、’ mongod ‘ユーザーが最大プロセス数とオープンファイル記述子を’ 64000 ‘に設定できます。
mongod soft nproc 64000
mongod hard nproc 64000
mongod soft nofile 64000
mongod hard nofile 64000ファイルを保存してエディタを終了します。
sysctl.confの設定
‘ /etc/sysctl.conf ‘ファイルを’nano’エディタで開きます。
sudo nano /etc/sysctl.conf以下の行を追加して、fs.file-max、max map countを設定し、swappinessを有効にします。
fs.file-max = 2097152
vm.max_map_count = 262144
vm.swappiness = 1ファイルを保存してエディタを終了します。
次に、以下の’sysctl‘コマンドを実行して変更を適用します。
sudo sysctl -p
オプションで、サーバーを再起動して変更を適用することもできます。
sudo rebootMongoDBのインストール
Alma Linuxサーバーの設定が完了したら、以下のコマンドでMongoDBサーバーのインストールを開始します。この場合、Alma Linux 9サーバーにMongoDB 7.0をインストールします。
まず、新しいMongoDBリポジトリファイル’ /etc/yum.repos.d/mongodb-org-7.0.repo ‘を作成します。
sudo nano /etc/yum.repos.d/mongodb-org-7.0.repoファイルに以下の設定を挿入します。
[mongodb-org-7.0]
name=MongoDBリポジトリ
baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-7.0.ascファイルを保存してエディタを終了します。
次に、以下の’dnf‘コマンドを実行して、Alma Linuxサーバーで利用可能なリポジトリをリストします。MongoDBリポジトリが追加されたことが確認できます。
sudo dnf repolist
次に、以下の’dnf install‘コマンドを実行して、MongoDBとMongoDBシェルをシステムにインストールします。インストールを確認するために’ Y ‘を入力します。
sudo dnf install mongodb-org mongodb-mongosh
インストールが完了したら、MongoDBの’mongod‘サービスを開始および有効にし、’mongod‘サービスの状態を確認して実行中であることを確認します。
sudo systemctl enable --now mongod
sudo systemctl status mongod以下のように、MongoDBがAlma Linuxサーバーで実行されていることが確認できます。

MongoDB認証の有効化
この時点で、MongoDBサーバーはAlma Linuxサーバーで実行されています。次に、パスワード認証を有効にしてMongoDBのインストールを保護し、新しいMongoDB管理者ユーザーを設定します。また、MongoDBサーバーを管理するための基本的な’mongosh’またはMongoDBシェルについても学びます。
まず、以下の’mongosh‘コマンドを使用してMongoDBサーバーにログインします。
mongoshMongoDBにログインしたら、以下のクエリを実行してMongoDBテレメトリを無効にします。
disableTelemetry()次に、データベース’ admin ‘に切り替え、以下のクエリを実行してMongoDBの管理者ユーザーを設定します。この例では、新しいユーザー’ myAliceAdmin ‘をMongoDBの管理者として作成します。プロンプトが表示されたら、パスワードを入力します。
use admin
db.createUser(
{
user: "myAliceAdmin",
pwd: passwordPrompt(),
roles: [
{ role: "userAdminAnyDatabase", db: "admin" },
{ role: "readWriteAnyDatabase", db: "admin" }
]
}
)新しいユーザーが作成されると、出力に’ { ok: 1 } ‘が表示されます。
‘ quit() ‘と入力してMongoDBサーバーから退出します。

次に、’ /etc/mongod.conf ‘ファイルを’nano’エディタで開きます。
sudo nano /etc/mongod.conf‘ security ‘オプションのコメントを外し、’ authorization: enabled ‘を追加してMongoDBでパスワード認証を有効にします。
security:
authorization: enabledファイルを保存してエディタを終了します。
次に、以下の’systemctl‘コマンドを実行して’mongod‘サービスを再起動し、変更を適用します。これにより、MongoDBサーバーは認証が有効な状態で実行されるはずです。
sudo systemctl restart mongod次に、以下の’mongosh‘コマンドを実行してMongoDBにログインします。
mongosh
データベース’ admin ‘に切り替え、以下のクエリを使用してユーザー’ myAliceAdmin ‘として認証します。プロンプトが表示されたら、パスワードを入力します。
use admin
db.auth("myAliceAdmin", passwordPrompt())認証が成功すると、出力に’ { ok: 1 } ‘が表示されます。

さらに、以下の’mongosh‘コマンドを使用して、ユーザー’ myAliceAdmin ‘でデータベース’ admin ‘にログインすることもできます。
mongosh --port 27017 --authenticationDatabase \
"admin" -u "myAliceAdmin" -pMongoDBでのユーザー作成
このセクションでは、’ mongosh ‘MongoDBクライアントを介してMongoDBに新しいデータベースとユーザーを作成します。
MongoDBに新しいデータベースとユーザーを作成するには、以下のクエリを実行します。この例では、新しいデータベース’ mydb ‘と新しいユーザー’ myUser ‘を作成します。プロンプトが表示されたら、パスワードを入力します。
use mydb
db.createUser(
{
user: "myUser",
pwd: passwordPrompt(), // または平文のパスワード
roles: [ { role: "readWrite", db: "mydb" },
{ role: "read", db: "reporting" } ]
}
)新しいデータベースとユーザーが作成されると、出力に’ { ok: 1 } ‘が表示され、その後’ quit() ‘と入力して終了します。

次に、以下の’mongosh‘コマンドを使用してMongoDBサーバーにログインします。プロンプトが表示されたら、’ myUser ‘のパスワードを入力します。
mongosh --port 27017 --authenticationDatabase \
"mydb" -u "myUser" -p成功すると、MongoDBシェルのプロンプトが表示されます。

結論
おめでとうございます!Alma Linux 9サーバーにMongoDBのインストールが完了しました。また、管理者ユーザーを作成し、パスワード認証を有効にすることでMongoDBを保護しました。最後に、MongoDBでデータベースとユーザーを作成する方法と、コマンドラインを介してMongoDBサーバーに接続するための基本的な’mongosh’コマンドについても学びました。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。