Docs Menu
Docs Home
/ /

トラブルシューティング

重要

MongoDB 8.2 は最新のマイナー リリースです。MongoDB 8.2 以降では、特定のユースケースに対応したオンプレミス配置(MongoDB Community と Enterprise)でマイナー リリースを利用できます。詳細については、 MongoDB のバージョン管理 を参照してください。

オンプレミスでサポートされている最新のMongoDBバージョンをインストールするには、インストール手順を参照してください。

MongoDB Community Edition のインストール の ステップ中に発生します。Import the public key used by the package management system

gpg: no valid OpenPGP data found.

ドキュメントに記載されているとおりにコマンドを正確にコピーします。操作はOK の応答を返します。

MongoDB公開 GPG キーがシステムに存在していることを確認します。

sudo apt-key list

期待される出力は、次のようになります。

/etc/apt/trusted.gpg
--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>

MongoDB Communitysudo apt update Edition のインストール 手順の中で を実行中後に発生します。多くの場合、 MongoDB公開 GPG キーの欠落が原因です。

W: GPG error: https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.2 Release: \
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4B7C549A058F8B6B
E: The repository 'https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.2 Release' \
is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Import the public key used by the package management systemMongoDB Community Edition のインストール で ステップを繰り返します。ドキュメントに記載されているとおりにコマンドとキーを正確にコピーします。

キーを確認します。

sudo apt-key list

期待される出力:

--------------------
pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17]
E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
uid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>

sudo apt install -y mongodb-orgCreate a list file for MongoDBMongoDB Community Edition のインストール 手順のステップ で を実行中後に発生します。多くの場合、/etc/apt/sources.list.d/mongodb-org-8.2.list ファイル の欠落または誤って構成が原因で発生します。

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mongodb-org
  1. ファイルの内容を確認します。

    cat /etc/apt/sources.list.d/mongodb-org-8.2.list
  2. コンテンツがUbuntuバージョンのドキュメントと一致しない場合は、ファイルを削除し Create a list file for MongoDB ステップを繰り返します。

  3. ファイルが存在しない場合、ステップ中に作成します。

  4. リポジトリを更新し、インストールを再試行します。

    sudo apt update
    sudo apt install -y mongodb-org

sudo apt install -y mongodb-orgMongoDB Community Edition のインストール 手順の ステップ中に発生します。多くの場合、すでにインストールされているUbuntumongodb パッケージとの競合が原因で発生します。

dpkg: error processing archive /var/cache/apt/archives/mongodb-org-server_8.2.0_amd64.deb (--unpack):
trying to overwrite '/usr/bin/mongod', which is also in package mongodb-server-core 1:3.6.3-0ubuntu1

競合を確認します。

sudo apt list --installed | grep mongo
mongodb/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed]
mongodb-clients/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]
mongodb-server/bionic,bionic,now 1:3.6.3-0ubuntu1 all [installed,automatic]
mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]

出力にこのようなUbuntuパッケージが表示されている場合は、それらを削除します。

sudo apt remove mongodb
sudo apt purge mongodb
sudo apt autoremove

注意

sudo apt purge mongodb はデフォルトの構成ファイルを削除します。変更された構成ファイルを保持するには、消去する前に別のディレクトリ(例: /home/your-user-name)にコピーします。

混合パッケージの場合:

mongodb-orgmongodb出力にmongodb-org パッケージとmongodb パッケージの両方が表示される場合は、まず パッケージを削除し、次に パッケージを削除します。 MongoDB関連のパッケージをすべてクリアした後、 MongoDB Community Edition のインストール を再試行してください。

mongodの起動時に発生します。多くの場合、構成されたポートを使用する別のプロセス(通常は別のmongod )が原因で発生します。

Socket is already in use
Failed to unlink socket file

プロセスを特定します。

次の例では、ss を使用して、LISTEN-l)状態と各ソケット(-p)で開いているすべての TCP(-t)と UDP(-u)ソケットを一覧表示します。サービス名またはホスト名(-n):

sudo ss -tulpn

ポート 27017 上の mongod を示す出力例:

Netid State Local Address:Port
udp UNCONN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=12))
udp UNCONN 10.1.16.87%enp0s3:68 users:(("systemd-network",pid=652,fd=15))
tcp LISTEN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=13))
tcp LISTEN 0.0.0.0:22 users:(("sshd",pid=819,fd=3))
tcp LISTEN 192.168.1.15:27017 users:(("mongod",pid=10027,fd=12))
tcp LISTEN 127.0.0.1:27017 users:(("mongod",pid=10027,fd=11))
tcp LISTEN ::]:22 users:(("sshd",pid=819,fd=4))

次のいずれかを実行できます。

  • 既存のプロセスをシャットダウンする

  • 競合する プロセスに新しいポートを選択します。mongod
    1. 構成ファイルで を変更しますnet.port

    2. コマンドラインで を使用--port

mongodプロセスログで発生します。多くの場合、データディレクトリが存在しない、またはmongod からアクセスできないことが原因で発生します。

Data directory ... not found
Attempted to create lock file on a read-only directory: ...

サービスとして起動する場合(sudo systemctl start mongod または sudo service mongod start)、これはを平均場合があります。

  • dbPath/etc/mongod.confrwxの は、mongodb ユーザーまたはグループの 権限のないディレクトリを参照します

  • dbPath 存在しないディレクトリを示す

ターミナルから起動する場合、これはを平均場合があります。

  • dbPathまたは--dbpath rwxは、ユーザーまたはそのグループの 権限のないディレクトリを参照します

  • ディレクトリが存在しない場合

原因に応じて、データディレクトリを作成するか、適切な権限と所有権を設定します。

  • ディレクトリを作成します。

    storage.dbPath構成ファイルで --dbpathを使用するか、コマンドラインで を使用してデータディレクトリを指定します。

  • デフォルトパスを設定します。

    • apt パッケージマネージャーのインストール:デフォルトの/etc/mongod.conf 構成ファイルでは、 storage.dbPathから に設定されています。/var/lib/mongodb

    • mongodコマンドラインで を使用しないで--dbpath を実行する場合:/data/db

    データディレクトリが存在することを確認するか、mkdir を起動する前にmongod を使用してディレクトリを作成します。

  • ディレクトリ権限を設定します。

    適切な権限と所有権を設定します。

    • mongodrwxには (読み取り、書込み、実行)権限が必要

    • chownchmoduser:groupを起動する前に、 と を使用して の所有権と権限を構成しますmongod

戻る

Community Edition

項目一覧