この問題は次の方法で解決できます:
<オール>mongodump
を使用) )/data/db
のすべてのファイルを削除する 、新しいバージョンとの互換性がないため:rm -rf /data/db/*
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 にすると、エラーはなくなります。