MongoDB の互換性
次の互換性テーブルは、特定のバージョンのMongoDBで使用するためのMongoDB Rubyドライバーの推奨バージョンを示しています。指定されている場合を除き、指定されたドライバー バージョンは、対応するサーバーバージョンに追加された機能を公開または利用します。
MongoDBサーバーのリリースは通常下位互換性があります。つまり、特定のドライバー バージョンは通常、新しいサーバーバージョンでは動作しますが、それらのサーバーバージョンの新機能は利用されない可能性があります。
最初の列は、ドライバーのバージョンの一覧です。
重要
MongoDB は、MongoDB Serverのサポート終了日(EOL)から 3 年間、MongoDB Server とドライバー間の互換性を確保します。MongoDB のリリースと EOL 日付の詳細については、 MongoDB ソフトウェア ライフサイクル スケジュールを参照してください。
互換性テーブルの凡例
Icon | 説明 |
---|---|
✓ | すべての機能がサポートされています。 |
⊛ | ドライバー バージョンは MongoDB バージョンで動作しますが、すべての新しい MongoDB 機能がサポートされているわけではありません。 |
✗ | ドライバー バージョンは MongoDB バージョンでは動作しません。MongoDB バージョンに接続しようとすると、エラーが発生します。 |
マークなし | ドライバー バージョンは MongoDB バージョンではテストされていません。 |
Ruby ドライバー | MongoDB 8.0 | MongoDB 7.0 | MongoDB 6.0 |
---|---|---|---|
2.21 | ✓ | ✓ | ✓ |
2.19から2.20 | ✓ | ✓ | |
2.18 | ✓ |
ドライバーは MongoDB の古いバージョンをサポートしていません。
言語互換性
次の互換性テーブルは、 MongoDB RubyドライバーのさまざまなバージョンでサポートされているRubyのバージョンを示しています。
最初の列は、ドライバーのバージョンの一覧です。
互換性テーブルの凡例
Icon | 説明 |
---|---|
✓ | すべての機能がサポートされています。 |
D | 言語バージョンのサポートは非推奨です。 |
マークなし | ドライバー バージョンは言語バージョンではテストされていません。 |
Ruby ドライバー | Ruby 3.3 | Ruby 3.2 | Ruby 3.1 | Ruby 3.0 | Ruby 2.7 | Ruby 2.6 | JRuby 9.4 | JRuby 9.3 | JRuby 9.2 | JRuby 9.1 |
---|---|---|---|---|---|---|---|---|---|---|
2.21.1 | ✓ | ✓ | ✓ | ✓ | D | ✓ | ✓ | D | ||
2.20 から 2.21.0 | ✓ | ✓ | ✓ | D | ✓ | ✓ | D | |||
2.19 | ✓ | ✓ | ✓ | ✓ | D | ✓ | ✓ |
ドライバーは Ruby の古いバージョンをサポートしていません。
Rails/ActiveSupport の互換性
Rubyドライバーは ActiveSupport に依存しません。ただし、アプリケーションで ActiveSupport またはRuby on Rails を使用する場合は、時間直列化などの動作を正しく行うために、ドライバーの ActiveSupport 互換性コードをロードする必要があります。
require 'mongo' require 'mongo/active_support'
Mongoid 7.0.6以降を使用するアプリケーションでは、Mongoid が自動的にロードするため、ドライバーの ActiveSupport コードを明示的にロードする必要はありません。
TLS/SSL 互換性
Rubyドライバーは、基礎のRuby openssl
拡張機能でサポートされているプロトコルを使用します。 openssl
拡張機能は通常、オペレーティング システムの OpenSSL ライブラリで利用可能な機能を公開します。
業界のベストプラクティスと一部の規制では、TLS 1.1 以上の使用が必要です。一部のオペレーティング システムまたはバージョンでは、これらの TLS バージョンをサポートする OpenSSL バージョンが提供されていない場合があります。
10.13より古い macOS(High Sierra)を使用する場合は、 rvm 、 Homebrew 、 macports 、または別の同様のソースからRubyをインストールする必要があります。その他のオプションについては、 「 Rubyのインストール 」を参照してください。
Linuxまたはその他の macOS Unix システムを使用している場合は、次のように OpenSSL バージョンを確認できます。
openssl version
バージョン番号が 1.0.1 未満の場合、TLS 1.1 以降のサポートは利用できません。ソリューションまたは新しいディストリビューションへのアップグレードについては、オペレーティング システムのベンダーに問い合わせてください。
次のコマンドを実行中て、TLS のバージョンを確認できます。
ruby -e "require 'net/http'; require 'json'; puts JSON.parse(Net::HTTP.get(URI('https://www.howsmyssl.com/a/check')))['tls_version']"
コマンドの実行中後、X
が 1
以上である TLS 1.X
が表示される必要があります。
TLS のバージョンとそのセキュリティへの影響の詳細については、「 トランスポート層セキュリティ チェックシート 」を参照してください。
JRuby と TLS 接続
JRuby の制限による:
ドライバーは ECDSAサーバー証明書をサポートしていません。
ドライバーは OCSP エンドポイント チェックを実行しません。