Docs Menu
Docs Home
/
MongoDBマニュアル
/ / / /

MongoDB Community Edition を Debian にインストール

項目一覧

  • Overview
  • Considerations
  • MongoDB Community Edition のインストール
  • MongoDB コミュニティ エディションの実行
  • MongoDB コミュニティ エディション のアンインストール
  • 詳細情報

注意

MongoDB Atlas

MongoDB Atlas は、インストールのオーバーヘッドが不要で、無料で始められるクラウドでホストされる MongoDBサービスオプションです。

このチュートリアルを使用して MongoDB 8.0をインストールします MongoDB Community Editionには、{2apt パッケージ マネージャーを使用します。

このチュートリアルではMongoDB 8.0 Community Edition をインストールします。別のバージョンの MongoDB Community をインストールするには、このページの左上隅にあるバージョンのドロップダウンメニューを使用して、該当バージョンのドキュメントを選択します。

MongoDB 8.0MongoDB 6.0 コミュニティ エディション は、以下の x86_64 アーキテクチャ上の 64 ビット Debian リリースをサポートしています。

  • Debian 12 「書込みワーム」

MongoDB はこれらのプラットフォームの 64 ビット版のみをサポートしています。

詳しくは、「プラットフォーム サポート」を参照してください。

MongoDB を本番環境に導入する前に、本番環境の MongoDB導入に関するパフォーマンス上の考慮事項と構成の推奨事項を示す 自己管理型配置のプロダクション ノート を検討してください。

Debian システムに MongoDB Community をインストールするには、MongoDB Inc. によって保守およびサポートされている公式のmongodb-orgパッケージを使用します。公式の mongodb-org パッケージには常に最新バージョンの MongoDB が含まれており、専用のリポジトリから入手できます。

重要

Debian が提供する mongodb パッケージは MongoDB Inc. によって保守されておらず、公式の mongodb-org パッケージに競合しています。Debian システムに mongodb パッケージがすでにインストールされている場合は、これらの手順に入る前に、まず mongodb パッケージをアンインストールする必要があります

公式パッケージの完全なリストについては、MongoDB Community Edition パッケージを参照してください。

apt パッケージマネージャーを使用して MongoDB Community Edition をインストールするには、次の手順に従います。

1

ターミナルから、gnupgcurl がまだ利用できない場合はインストールします。

sudo apt-get install gnupg curl

MongoDB 公開 GPG キーをインポートするには、次のコマンドを実行します。

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
--dearmor
2

Debian のバージョンに合ったコマンドを使用してリスト ファイルを作成します。

echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] http://repo.mongodb.org/apt/debian bookworm/mongodb-org/8.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
3

ローカル パッケージ データベースをリロードするには、次のコマンドを実行します。

sudo apt-get update
4

最新の安定版 MongoDB または特定のバージョンの MongoDB をインストールできます。

最新の安定したバージョンをインストールするには、以下を実行します。

sudo apt-get install -y mongodb-org

特定のリリースをインストールするには、次の例のように、各コンポーネント パッケージをバージョン番号とともに個別に指定する必要があります。

sudo apt-get install -y mongodb-org=8.0.0 mongodb-org-database=8.0.0 mongodb-org-server=8.0.0 mongodb-mongosh mongodb-org-mongos=8.0.0 mongodb-org-tools=8.0.0

mongodb-org=8.0.0 のみをインストールし、コンポーネント パッケージを含めない場合は、指定したバージョンに関係なく、各 MongoDB パッケージの最新バージョンがインストールされます。

任意。使用可能な MongoDB のバージョンを任意に指定できますが、新しいバージョンが使用可能になると、apt-get によってパッケージがアップグレードされます。意図しないアップグレードを防ぐために、パッケージを現在インストールされているバージョンに固定することができます。

echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-database hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-mongosh hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections

ほとんどの Unix 系オペレーティング システムでは、プロセスが使用できるシステム リソースが制限されています。 これらの制限は MongoDB の操作に悪影響を及ぼす可能性があるため、調整する必要があります。 プラットフォームに推奨される設定については、 「 自己管理型配置の UNIX ulimit設定」を参照してください。

注意

オープンしているファイル数のulimit値が64000未満の場合、MongoDB は起動警告を生成します。

デフォルトでは、MongoDB インスタンスは次のように保存されます。

  • データファイルの保存先: /var/lib/mongodb

  • ログファイルの保存先: /var/log/mongodb

パッケージ マネージャーを使用してインストールした場合、これらのデフォルト ディレクトリはインストール中に作成されます。

Tarball をダウンロードして手動でインストールした場合は、MongoDB を実行するユーザーに応じて mkdir -p <directory> または sudo mkdir -p <directory> を使用してディレクトリを作成できます。(mkdirsudo の詳細については、Linux のマニュアル ページを参照してください。)

デフォルトでは、MongoDB は mongodb ユーザー アカウントを使用して実行されます。MongoDB プロセスを実行するユーザーを変更する場合は、/var/lib/mongodb ディレクトリと /var/log/mongodb ディレクトリへの権限も変更して、このユーザーにこれらのディレクトリへのアクセス権を付与する必要があります

別のログファイル ディレクトリとデータファイル ディレクトリを指定するには、/etc/mongod.confsystemLog.pathstorage.dbPath の設定を編集します。MongoDB を実行するユーザーがこれらのディレクトリにアクセスできるようにします。

システム上で MongoDB コミュニティ エディション を実行するには、次の手順に従います。これらの手順では、Debian が提供する非公式の mongodb パッケージではなく、公式の mongodb-org パッケージを使用し、デフォルト設定を使用していることを前提としています。

init システム

mongod プロセスを実行、管理するには、オペレーティング システムに組み込まれている init システムを使用します。最近のバージョンの Linux では systemdsystemctl コマンドを使用)が使用される傾向があり、古いバージョンの Linux では System V initservice コマンドを使用)が使用される傾向があります。

プラットフォームで使用されている init システムがわからない場合は、次のコマンドを実行します。

ps --no-headers -o comm 1

次に、結果に基づいて以下の適切なタブを選択します。

  • systemd - 以下の [systemd(systemctl)] タブを選択します。

  • init - 以下の [System V Init(サービス)] タブを選択します。


1

次のコマンドを発行して、mongod プロセスを開始できます。

sudo systemctl start mongod

mongod の起動時に次のようなエラーが表示された場合は以下に従ってください。

Failed to start mongod.service: Unit mongod.service not found.

最初に次のコマンドを実行します。

sudo systemctl daemon-reload

次に、上記の開始コマンドを再度実行します。

2
sudo systemctl status mongod

必要に応じて、次のコマンドを実行すると、システムの再起動後に MongoDB が確実に起動するようにできます。

sudo systemctl enable mongod
3

必要に応じて、次のコマンドを発行して、mongod プロセスを停止できます。

sudo systemctl stop mongod
4

次のコマンドを発行して、mongod プロセスを再開できます。

sudo systemctl restart mongod

プロセスの状態をエラーや重要なメッセージで確認するには、/var/log/mongodb/mongod.log ファイルの出力を監視してください。

5

mongoshと同じホストマシン上でmongod セッションを開始します。コマンドライン オプションなしでmongoshを実行すると、デフォルト ポート27017を使用してローカルホストで実行されているmongodに接続できます。

mongosh

mongosh を使った接続(別のホストやポートで実行されている mongod インスタンスへの接続など)の詳細については、「mongosh ドキュメント」を参照してください。

MongoDB をスムーズに使い始められるように、MongoDB ではさまざまなドライバー エディションでスタートガイドを提供しています。ドライバーのドキュメントについては、「MongoDB での開発スタートガイド」を参照してください。

1

mongod を起動するには、次のコマンドを実行します:

sudo service mongod start
2

mongodプロセスが正常に開始されたことを確認します。

sudo service mongod status

mongod プロセスの現在のステータスは、デフォルトで /var/log/mongodb/mongod.log にあるログファイルで確認することもできます。実行中の mongod インスタンスは、次の行で接続の準備ができていることを示します。

[initandlisten] waiting for connections on port 27017

3

必要に応じて、次のコマンドを発行して、mongod プロセスを停止できます。

sudo service mongod stop
4

mongod を再起動するには、次のコマンドを実行します:

sudo service mongod restart
5

mongoshと同じホストマシン上でmongod セッションを開始します。コマンドライン オプションなしでmongoshを実行すると、デフォルト ポート27017を使用してローカルホストで実行されているmongodに接続できます。

mongosh

mongosh を使った接続(別のホストやポートで実行されている mongod インスタンスへの接続など)の詳細については、「mongosh ドキュメント」を参照してください。

MongoDB をスムーズに使い始められるように、MongoDB ではさまざまなドライバー エディションでスタートガイドを提供しています。ドライバーのドキュメントについては、「MongoDB での開発スタートガイド」を参照してください。

システムから MongoDB を完全に削除するには、MongoDB アプリケーション自体、構成ファイル、データとログを含むすべてのディレクトリを削除する必要があります。次のセクションで必要な手順をご案内します。

警告

このプロセスにより、MongoDB、その構成、およびすべてのデータベースが 完全に 削除されます。このプロセスは元に戻すことができないため、続行する前にすべての構成とデータがバックアップされていることを確認してください。

1

次のコマンドを発行して、mongod プロセスを停止します。

sudo service mongod stop
2

以前にインストールした MongoDB パッケージをすべて削除します。

sudo apt-get purge mongodb-org*
3

MongoDB データベースとログ ファイルを削除します。

sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

デフォルトでは、MongoDB は bindIp127.0.0.1 に設定して起動します。これは、ローカルホスト ネットワーク インターフェースにバインドされます。つまり、mongod は同じマシン上で実行中のクライアントからの接続のみを受け入れることができます。この値が有効なネットワークインターフェースに設定されていない限り、リモートクライアントは mongod に接続できず、mongodレプリカセットを初期化できません。

この値は、次のいずれかに設定できます。

  • MongoDB設定ファイルでbindIpを使用する。または

  • コマンドライン引数を経由する。 --bind_ip

警告

インスタンスをパブリックにアクセス可能な IP アドレスにバインドする前に、クラスターを不正アクセスから保護する必要があります。 セキュリティ推奨事項の完全なリストについては、「自己管理型配置のセキュリティ チェックリスト」を参照してください。 最低限、認証を有効化し、ネットワーク インフラストラクチャの強化 を検討してください。

bindIpの構成の詳細については、「自己管理型配置の IP バインディング 」を参照してください。

MongoDB Community Edition は専用のリポジトリから利用可能で、以下の公式にサポートされているパッケージが含まれています

パッケージ名
説明
mongodb-org
以下に掲げるコンポーネント パッケージを自動的にインストールするmetapackage です。
mongodb-org-database

以下に掲げるコンポーネント パッケージを自動的にインストールするmetapackage です。

パッケージ名
説明
mongodb-org-server
mongod デーモン、関連する init スクリプト、構成ファイル/etc/mongod.conf)が付属します。init スクリプトを使用して、構成ファイルで mongod を起動できます。詳細については、上記の「MongoDB Community Edition の実行」セクションを参照してください。
mongodb-org-mongos
mongos デーモンが付属します。
mongodb-mongosh
MongoDB Shell(mongosh)を含みます。
mongodb-org-tools

以下に掲げるコンポーネント パッケージを自動的にインストールする metapackage です。

パッケージ名
説明
mongodb-database-tools

次の MongoDB データベース ツールが含まれています。

mongodb-org-database-tools-extra
install_compass スクリプトが付属します

戻る

Ubuntu へのインストールのトラブルシューティング