Docs Menu
Docs Home
/ / /
Node.js

ドライバーのバージョンをアップグレードする

項目一覧

  • Overview
  • アップグレード方法
  • 重大な変更
  • バージョン 5.x での重大な変更
  • バージョン 4.x の重大な変更
  • サーバー リリースの互換性の変更
  • バージョン 4.2 サーバー リリース サポートの変更

このページでは、ドライバーを新しいバージョンにアップグレードする方法を説明します。 このページには、該当する場合、機能を失うことなくドライバーをアップグレードするためにアプリケーションに加える必要がある変更も含まれます。

アップグレードする前に、次のアクションを実行してください。

  • 新しいドライバー バージョンが、アプリケーションが接続する MongoDB Server のバージョン、およびアプリケーションを実行する Node.js のバージョンと互換性があることを確認します。 この情報については、 互換性ページを参照してください。

  • このガイドの「重大な変更 」セクションで、アプリケーションが現在使用しているドライバーのバージョンとアップグレードが予定されているバージョンとの間の重大な変更に対処します。 MongoDB Server リリースの互換性の変更の詳細については、「サーバー リリースの互換性の変更 」セクションを参照してください。

Tip

ドライバーのバージョンをアップグレードするには、アプリケーションの ディレクトリで次のコマンドを実行します。

npm install mongodb@5.6

ドライバーの別のバージョンにアップグレードするには、 @記号の後の情報をご希望のバージョン番号に置き換えます。 コマンドの詳細については、npm install npm-インストールnpm のドキュメント。

重大な変更とは、アプリケーションが期待どおりに動作するのを妨げる可能性のあるドライバーの特定のバージョンの規則または動作の変更です。

このセクションの重大な変更は、それを導入したメジャー バージョン リリースによって分類されます。 ドライバーのバージョンをアップグレードするときは、現在のバージョンと計画されているアップグレード バージョン間のすべての重大な変更に対処してください。 たとえば、ドライバーを v3.x から v5.x にアップグレードする場合は、v4.x と v5.x にリストされているすべての重大な変更に対処します。

  • ドライバー バージョン 5.x は Node.js v12 またはそれ以前のバージョンと互換性がありません。 このバージョンのドライバーを使用する場合は、Node.js v14.20.1 以降を使用する必要があります。

  • ドライバーは、Promise ベースの API を優先するため、コールバックのサポートを削除します。 次のリストは、コールバック ユーザーがこのバージョンを採用するためのいくつかの戦略を示しています。

    • Promise ベースの API に移行する(推奨)

    • Promise ベースの API と util.callbackify

    • コールバックを引き続き使用するには、 mongodb-legacyを追加します

    これらの戦略の詳細については 、 v5.0 の変更ログを参照してください。

  • ドライバーはCollection.insert()Collection.update()Collection.remove()ヘルパー メソッドのサポートを削除します。 次のリストでは、削除されたメソッドの機能を置き換える方法を示しています。

    • Collection.insert()からinsertOne()またはinsertMany()に移行します

    • Collection.update()からupdateOne()またはupdateMany()に移行します

    • Collection.remove()からdeleteOne()またはdeleteMany()に移行します

  • ドライバーにはデフォルトでAmazon Web Services SDK モジュールが含まれなくなりました。

  • ドライバーがbson-extパッケージを自動的にインポートしなくなりました。

  • ドライバーにより、カスタムPromiseライブラリのサポートが削除されます。 ドライバーは、 MongoClientpromiseLibraryオプションと、カスタムPromiseライブラリを指定できるPromise.setのエクスポート をサポートしなくなりました。

  • ドライバーはCollection.mapReduce()ヘルパーのサポートを削除します。

  • BulkWriteResult型には、公開で列挙可能なresultプロパティがなくなりました。

  • 次のタイプ、オプション、メソッドが削除されました。

    • BulkResult.lastOp() メソッド

    • opTime のプロパティ BulkResult

    • BulkWriteOptions.keepGoing オプション

    • WriteConcernError.err() メソッド

    • AddUserOptions.digestPassword オプション

    • Kerberos gssapiCanonicalizeHostName option

    • slaveOk オプションとメソッドが削除され、 secondaryOk

    • ObjectID 型が削除されました ObjectId

    • AsyncIterator インターフェースが削除されました AsyncGenerator

  • ドライバー バージョン 4.x は Node.js v12.8 またはそれ以前のバージョンと互換性がありません。 このバージョンのドライバーを使用する場合は、 Node.js v12.9 以降を使用する必要があります。

  • Cursor 型はReadableを直接拡張しなくなりました。

  • ChangeStreamインスタンスをEventEmitterとして使用した後、イテレータとして使用することはできません。 また、 EventEmitterインスタンスをChangeStreamとして使用した後に、それをイテレータとして使用するという逆の操作もできません。

  • 次のメソッドはコールバック パラメーターを受け入れなくなりました。

    • Collection.find()

    • Collection.aggregate()

    • Db.aggregate()

  • maxPoolSize接続オプションのデフォルト値が100になりました。

  • ドライバーはgssapiServiceName Kerberos オプションをサポートしなくなりました。 代わりにauthMechanismProperties.SERVICE_NAMEを使用する必要があります。

  • ドライバーではブール値オプションとして、 01などの非ブール値型は受け入れなくなりました。

  • db.collection型はコールバックを受け入れなくなりました。

  • Db型はEventEmitterではなくなりました。 You can listen to any events directly from the MongoClient instance.

  • ドライバーはCollection.group()ヘルパーのサポートを削除します。

  • ドライバーには非推奨のGridStore API が含まれなくなりました。

これらの変更の詳細については 、 v4.0 の変更ログを参照してください。

サーバー リリースの互換性の変更とは、MongoDB Server の一連のバージョンのサポートを廃止するドライバーに対する変更です。

ドライバーは、サポート終了(EOL)に達すると、MongoDB Server バージョンのサポートを終了します。

EOL 製品の MongoDB サポートの詳細については、レガシー サポート ポリシー を参照してください。

  • v 4.2ドライバーは MongoDB Server v 3.4以前のサポートを削除します。 v 4.2を使用するには ドライバーに設定されている場合、MongoDB Server は v 3.6である必要があります。 以降に更新します。 MongoDB Server 配置をアップグレードする方法については、MongoDB Server マニュアルのリリースノートを参照してください。

戻る

互換性