AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

Compass をMongoDBに接続する

このページでは、MongoDB Compass を使用して MongoDB ホストに接続する方法を概説しています。スタンドアロン、レプリカセット、またはシャーディングされたクラスター ホストに接続できます。

注意

MongoDB Atlas

MongoDB ホストの作成が必要な場合、MongoDB Atlas を使用するとよいでしょう。Atlas はクラウドでホストされる、サービスとしてのデータベースであり、インストール不要で、手軽に開始できる無料階層を提供します。また、ご使用の配置に Compass を簡単に接続するためのコピー可能な URI も提供します。

Compass のインストールが必要な場合は、「Compass のダウンロードとインストール」で手順を参照してください。

  • レプリカセットに Compass を接続する場合、レプリカセットの個々のノードに直接接続することはお勧めしません。接続先のノードが選挙プロセスの結果、プライマリからセカンダリに、またはその逆に切り替わった場合、Compass は強制的に接続を遮断するか、古いデータを表示する可能性があります。

    レプリカセットに接続する代替策として、接続情報の入力時に、レプリカセットの SRV record または Replica Set Name を使用します。

  • Compass に非正規のMongoDBインスタンスに接続すると、当該インスタンスは正規のMongoDBインスタンスとは異なる動作をする可能性があるため、警告メッセージが表示されます。これらの非正規の インスタンスには、機能が欠落しているか不完全になっている場合があります。

  • バージョン 1.39.2 以降、MongoDB Compass は、バージョン 1.31.0 以前のレガシー接続ファイルからの移行をサポートしなくなりました。レガシー接続とは、ディスクに保存されている Compass 内部接続オプション形式を指し、バージョン 1.39.0 以降ではサポートされなくなりました。

    お気に入りにレガシー接続が保存されている場合、バージョン 1.39.0に接続をエクスポートして新形式に変換してから、バージョン 1.39.2 実行しているクラスターです。

接続名がすでに Compass ウィンドウのConnections Sidebarにある場合は、接続する接続名をクリックして接続します。

それ以外の場合は、次のいずれかの方法で配置を接続できます。

  • 接続文字列を指定します。

  • Advanced Connection Options を指定します。高度な接続オプションを使用すると、認証、TLS/SSL、SSH 接続オプションを指定できます。詳細については、「高度な接続オプション」を参照してください。

注意

バージョン1.44.0以降、 Compass を介して、一度に複数の MongoDB インスタンスに接続できます。

接続文字列を指定すると、Compass は MongoDB でサポートされているほとんどの接続文字列オプションをサポートします。

Compass のデフォルトの socketTimeoutMS 値は 60000 または 60 秒です。Compass でタイムアウトが頻発する場合、接続文字列でこのオプションの値を引き上げることをおすすめします。

Compass がサポートする接続文字列オプションの完全なリストについては、Github で「 Compass Connection README」を参照してください。

1

の下部のパネルで、Connections Sidebar Add New ConnectionをクリックしてNew Connection モーダルを開きます。

If you already have connections listed in the Connections Sidebar, click the icon on the top right of the sidebar to open the New Connection modal.

2

配置用の接続文字列を使用可能な場合、その文字列をダイアログボックスに直接貼り付けることができます。標準接続文字列形式または DNS シードリスト接続形式のいずれかを使用できます。

MongoDB Atlas クラスターの接続文字列を取得するには、以下の手順に従います。

  1. Atlas Clusters ビューに移動します。

  2. 希望するクラスターで [Connect] をクリックします。

  3. [Connect with MongoDB Compass] をクリックします。

  4. 指定された接続文字列をコピーします。

警告

接続文字列を編集するためにクリックしながら MongoDB Compass の接続形式に進むと、Compass はデフォルトで認証情報をプレーンテキストで表示します。

パスワードを公開せずに接続文字列の認証情報を編集するには、Compass 接続フォームの [Advanced Connection Options > Authentication] タブを使用します。

Atlas でホストされない配置の接続文字列の形式を設定する方法については、「接続文字列の URI 形式」を参照してください。

3

名前 フィールドを使用して接続の名前を入力します。 名前を指定しない場合、Compass は接続名としてクラスターのホスト名を使用します。

4

[] ドロップダウン メニューを使用して、接続のラベルの色を選択します。 接続に接続すると、ラベルの色は接続を参照するタブの背景色になります。

5

接続をお気に入りとして保存するには、 モーダルでFavorite this connectionオプションを確認します。

6

Compass のホームページに移動するには、Save、Connect、またはSave & Connect をクリックします。

  • Save ボタンは接続を保存し、クラスターにまだ接続せずにモーダルを閉じます。

  • Connect ボタンを使用すると、接続文字列や認証情報を保存せずにクラスターに接続することができます。

  • デフォルトのSave & Connectボタンは、情報を保存し、クラスターに接続します。

重要

必要なアクセス権

MongoDB 配置に接続してからさまざまな Compass 機能にアクセスするには、特定のユーザー ロールが必要になる場合があります。Compass 機能に必要なロールの詳細については、「必要なアクセス権」を参照してください。

高度な接続オプションにより、Compass を MongoDB に接続するための追加の方法が提供されます。このオプションを選択すると、認証、TLS/SSL、SSH を指定して、配置に安全に接続できます。

Compass を使用して接続オプションを指定する方法の詳細については、「高度な接続オプション」を参照してください。

注意

Atlas App Connections を使用して、Compass をMongoDB Atlasアカウントに安全に接続できます。 Atlas App Connections と Compass の連携方法については、「 アプリのタイプ 」を参照してください。

プロキシ構成との接続を確立するには、次の環境変数を使用します。

変数
説明
例

MONGODB_PROXY

データベース クラスターなど、 mongodb://とmongodb+srv:// URL へのプロキシ接続。

次の例では、TLS が有効になっているexample.com:8080にある CONNECT プロキシ を介してすべての MongoDB 接続をプロキシするようにMONGODB_PROXY環境変数を設定します。

export MONGODB_PROXY=https://example.com:8080

HTTP_PROXY

http:// URL へのプロキシ接続。 HTTP 接続は、ほとんどの場合、OIDC 認証に使用されます。

HTTPS_PROXYも設定している場合は、 HTTPS_PROXYの値がすべてのリクエストに対して優先されます。

次の例えではexample.com:8080にある CONNECT プロキシ を介して HTTP 接続をプロキシするようにHTTP_PROXY環境変数を設定します。

export HTTP_PROXY=http://example.com:8080

HTTPS_PROXY

https:// URL へのプロキシ接続。 HTTPS 接続は、ほとんどの場合、OIDC 認証に使用されます。

HTTP_PROXYも設定している場合は、 HTTPS_PROXYの値がすべてのリクエストに対して優先されます。

次の例では、TLS を使用せずにlocalhost:8080にある CONNECT プロキシ を介してすべての HTTPS 接続をプロキシするようにHTTPS_PROXY環境変数を設定します。

export HTTPS_PROXY=http://localhost:8080

ALL_PROXY

指定された URL へのすべての接続をプロキシします。

次の例では、URL に認証情報が含まれるexample.com:1234にある Socks 5プロキシを介して、すべてのアウトバウンド ネットワーク接続をプロキシするようにALL_PROXY環境変数を設定します。

export ALL_PROXY=socks5://username:password@example.com:1234

NO_PROXY

プロキシから除外するホスト名のコンマ区切りリスト。

次の例では、 localhostとinternal-db.example.comへの接続でプロキシをバイパスするようにNO_PROXY環境変数を設定します。

export NO_PROXY=localhost,internal-db.example.com

注意

Compass は次のプロキシ タイプをサポートしています。

  • Socks 5プロキシ

  • HTTPプロキシ(HTTPSプロキシとも呼ばれる)

  • CONNECT プロキシ

  • 以前にリストされたプロキシのいずれかに解決されるPAC URL

Compass セッションはコマンドラインから開始できます。

エンタープライズ環境で、スクリプトを使って起動する場合に Compass の配置を簡素化できます。たとえば、機密システムへのアクセスを制限するには、Compass をジャンプ ホスト上で実行できるようにコマンドラインでの起動を構成できます。

コマンドラインを使用して Compass に接続するには、接続オプションを接続文字列に直接含めるか、コマンドライン引数として含めることができます。

接続文字列で接続オプションを指定するには、次の形式を使用してください。

mongodb-compass 'mongodb://username:password@hostname:port/database?ssl=true&replicaSet=myReplicaSet'

接続文字列オプションの詳細については、「接続文字列オプション」を参照してください。

コマンドライン引数として接続オプションを指定するには、次の形式を使用します。

<path/to/compass/executable> <connection string> --username <username> --password <password>

さらにコマンドライン引数接続オプションについては、「コマンドラインからの Compass の起動」を参照してください。

Tip

配置を切断する方法については、「MongoDB からの切断」を参照してください。

次の例は、いくつかの高度な接続文字列オプションを示しています。すべての接続文字列オプションについての情報は、「接続文字列オプション」を参照してください。

次の接続文字列は、tls URI オプションを使用して TLS を有効にします。 tlsCertificateKeyFile は、クライアント証明書と秘密キーへのパスを指定します。サーバーでクライアント証明書が必要な場合を除き、または X.509認証を使用している場合を除き、接続文字列で tlsCertificateKeyFile を指定するかどうかは任意です。

mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db0.example.com/?directConnection=true&tls=true&tlsCAFile=path/to/rootCA.crt&tlsCertificateKeyFile=path/to/server_certificate.pem

SSL を有効にするには、tls=true の代わりに同等の ssl=true オプションを使用します。

次の例では、authMechanism 接続文字列オプションを使用して、接続文字列で X.509 認証を指定する方法を示します。

mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db1.example.com/?authMechanism=MONGODB-X509&tls=true&tlsCertificateKeyFile=/path/to/client_certificate.pem

次の例では、LDAP 認証を指定します。authMechanismを plain に設定して、LDAP 認証メカニズムの使用を指定し、authSource を $external に設定して、認証データベースが $external であることを示します。

mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db2.example.com/?authMechanism=PLAIN&authSource=$external

次の例では、Kerberos 認証を指定します。authMechanism を GSSAPI に設定して Kerberos 認証メカニズムを使用し、認証データベースが $external であることを示すために authSource を $external に設定します。

mongodb://myDatabaseUser@db3.example.com/?authMechanism=GSSAPI&authSource=$external

接続文字列で読み込み設定(read preference)および書き込み設定(write preference)を有効にするには、読み込み設定には readPreference オプションを、書込み保証 (write concern)には w オプションを使用できます。

以下の接続文字列は、読み込みおよび書き込みの両方の設定を行います。readPreference=secondary は、読み込み操作がレプリカセットのセカンダリメンバーに向けられることを指定し、w=majority は、書き込み操作がレプリカセットの過半数のメンバーによって確認されることを保証します。

mongodb://myDatabaseUser:D1fficultP%40ssw0rd@db4.example.com/database?readPreference=secondary&w=majority

接続文字列で以下のように analytics ノードタイプを指定します。

  • readPreference を secondary に設定して、読み込み操作をセカンダリノードに送信するよう指定します。

  • readPreferenceTags を nodeType:ANALYTICS に設定して、読み込み操作を分析ノードに送信するようにします。

次の接続文字列は、接続文字列で analytics ノード タイプを指定する方法を示しています。

mongodb+srv://myDatabaseUser:D1fficultP%40ssw0rd@db5.example.com/myDatabase?readPreference=secondary&readPreferenceTags=nodeType:ANALYTICS

分析ノードを使用してワークロードを分離する方法の詳細については、「定義済みレプリカセット タグを使用したクエリ」を参照してください。