GNU/Linux >> Linux の 問題 >  >> Linux

mongodb をサービスとして起動できません - 例外。 KVCatalog にコレクションの UUID がありません

この問題は次の方法で解決できます:

<オール>
  • すべてのデータベースのバックアップ (mongodump を使用) )
  • /data/db のすべてのファイルを削除する 、新しいバージョンとの互換性がないため:rm -rf /data/db/*
  • MongoDB サービスの再起動
  • すべてのデータベースを復元する (mongorestore を使用) )

  • 古いmongodb 3.4から4.2にアップグレードするときに、admin dbで同様の問題に遭遇しました。

    解決策は、すべてのデータベースを mongodump し、/var/lib/mongodb を削除してから、すべてのデータベースを mongorestore に戻すことです。

    STORAGE  [initandlisten] exception in initAndListen: MustDowngrade: Collection does not have UUID in KVCatalog. Collection: admin.system.users, terminating
    2019-09-24T21:59:55.274+0000 I  NETWORK  [initandlisten] shutdown: going to close listening sockets...
    2019-09-24T21:59:55.274+0000 I  NETWORK  [initandlisten] removing socket file: /tmp/mongodb-27017.sock
    2019-09-24T21:59:55.274+0000 I  -        [initandlisten] Stopping further Flow Control ticket acquisitions.
    2019-09-24T21:59:55.274+0000 I  CONTROL  [initandlisten] now exiting
    2019-09-24T21:59:55.274+0000 I  CONTROL  [initandlisten] shutting down with code:100
    

    問題の原因:mongodb 4.2 は、system.user コレクションに UUID 値を持つ userId を追加します。これがお役に立てば幸いです。

    別のmongo dbをアップグレードするときに、startup_logであなたとまったく同じ問題に遭遇しました。mongodを停止して/ var/lib/mongodbを削除してアップグレードした後、/ var/lib/mongodbフォルダーを削除するときにmongodbを停止しなかったようです4.2 にすると、エラーはなくなります。


    Linux
    1. Vino Vncサーバーは起動時に起動できませんか?

    2. Gene6FTPサーバーサービスがWindowsServer2008で開始されない

    3. Nagios サービスを開始できません (CentOS/RHEL)

    1. Linux / OS Xでmongodサービスを開始する正しい方法は何ですか?

    2. Fedora で実行されていない MongoDB サービス

    3. wc -l は、行末文字がない場合、ファイルの最後をカウントしません

    1. CentOS 7 で postgresql サービスを開始できません

    2. Ubuntu 16.04 で Docker サービスを開始できない

    3. Ubuntu 16.04 をコマンド ラインで起動する / GUI を起動しない