AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

MongoDB に接続する

このページには、Python アプリケーションをさまざまな設定で MongoDB に接続する方法を示すコード例が含まれています。

Tip

このページの接続オプションの詳細については、各セクションに記載されているリンクを参照してください。

このページの接続例を使用するには、コード例をサンプルアプリケーションまたは独自のアプリケーションにコピーします。 <hostname>などのコード例にあるすべてのプレースホルダーを、MongoDB 配置に関連する値に置き換えてください。

次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。

  1. PyMongo がインストールされていることを確認します。

  2. 次のコードをコピーし、新しい.pyファイルに貼り付けます。

  3. このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。

対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

from pymongo import MongoClient try: # start example code here # end example code here client.admin.command("ping") print("Connected successfully") # other application code client.close() except Exception as e: raise Exception( "The following error occurred: ", e)

次のセクションでは、MongoDB のローカル インスタンスや Atlas のクラウドでホストされるインスタンスなど、さまざまなターゲットに接続する方法について説明します。

次のコードは、接続文字列を接続してローカルのMongoDBデプロイに接続する方法を示しています。 対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

uri = "mongodb://localhost:27017/"client = MongoClient(uri)

次のコードは、Atlas でホストされている配置に接続するための接続文字列を示しています。 対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

uri = "<Atlas connection string>"client = MongoClient(uri, server_api=pymongo.server_api.ServerApi( version="1", strict=True, deprecation_errors=True))

次のコードは、 レプリカセットに接続するための接続文字列を示しています。 対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

uri = "mongodb://<replica set member>:<port>/?replicaSet=<replica set name>"client = MongoClient(uri)

次のセクションでは、ネットワーク圧縮アルゴリズムを指定しながら MongoDB に接続する方法について説明します。

次のタブは、MongoDB に接続するときに、利用可能なすべてのコンプレッサーを指定する方法を示しています。

client = pymongo.MongoClient("mongodb://<db_username>:<db_password>@<hostname>:<port>", compressors = "snappy,zstd,zlib")

圧縮アルゴリズムの指定の詳細については、ネットワーク圧縮ガイドの互換性を参照してください。

次のタブは、 zlibコンプレッサーの圧縮レベルを指定する方法を示しています。

client = pymongo.MongoClient("mongodb://<db_username>:<db_password>@<hostname>:<port>", compressors = "zlib", zlibCompressionLevel=<zlib compression level>)

zlib圧縮レベルの設定の詳細については、ネットワーク圧縮ガイドのバージョンの互換性を参照してください。

次のコードは、サーバー選択関数を指定する接続文字列を示しています。 対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

client = pymongo.MongoClient("mongodb://<db_username>:<db_password>@<hostname>:<port>", server_selector=<selector function>)

サーバー選択をカスタマイズする方法について詳しくは、「 サーバー選択をカスタマイズする 」を参照してください。

次のコードは、接続の Stable API設定を指定する方法を示しています。対応するコードを表示するには、Synchronous タブまたは Asynchronousタブを選択します。

from pymongo.server_api import ServerApi client = pymongo.MongoClient("mongodb://<db_username>:<db_password>@<hostname:<port>", server_api=ServerApi("<Stable API version>"))

Stable API の詳細については、「 Stable API 」を参照してください。

次のコードは、timeout() メソッドを使用してクライアント側のタイムアウトを設定する方法を示しています。

with pymongo.timeout(<timeout length>): # perform operations here

クライアント側タイムアウトの詳細については、「サーバーの実行時間の制限 」を参照してください。

次のタブでは、timeoutMS 接続オプションを使用してクライアント側のタイムアウトを設定する方法を示します。

client = pymongo.MongoClient("mongodb://<db_username>:<db_password>@<hostname@:<port>", timeoutMS=<timeout length>)

クライアント側タイムアウトの詳細については、「サーバーの実行時間の制限 」を参照してください。