Overview
MongoDB 配置に接続するには、次の 2 つのものが必要です。
接続 URI 。接続文字列とも呼ばれます。これは、接続するMongoDBデプロイをRubyドライバーに指示します。
Mongo::Clientオブジェクト。MongoDBMongoDBデプロイへの接続を作成し、それに対して操作を実行できるようにします。
これらのコンポーネントのいずれかを使用して、 MongoDB . に接続する間にRubyドライバーの動作をカスタマイズすることもできます。
このガイドでは、接続string を作成し、{0Mongo::Client
オブジェクトを使用してMongoDB に接続する方法について説明します。
接続URI
標準の接続stringには次のコンポーネントが含まれます。
コンポーネント | 説明 |
---|---|
| 必須: これを標準接続形式の文字列として識別するプレフィックス。 |
| |
| 必須。 MongoDB がを実行中いるホスト名とオプションのポート番号。ポート番号を指定しない場合、ドライバーはデフォルトのポート |
| 任意。 接続stringに |
| 任意。 接続固有のオプションを |
接続 の作成の詳細については、string MongoDB Serverドキュメントの「 接続 文字列 」を参照してください。
Mongo:: クライアントの作成
MongoDBへの接続を作成するには、接続 URI をコンストラクターに渡して、Mongo::Client
クラスのインスタンスを構築します。次の例では、localhost
のポート 27017
上のMongoDBデプロイに接続するための Mongo::Client
オブジェクトを構築します。
client = Mongo::Client.new("mongodb://localhost:27017")
あるいは、ホスト名とポート番号をそれぞれに含む文字列の配列を Mongo::Client
コンストラクターに渡すこともできます。次の例は、この構文を使用して localhost
のポート 27017
に接続する方法を示しています。
client = Mongo::Client.new(['localhost:27017'])
Tip
クライアントの再利用
各Mongo::Client
オブジェクトはデータベースへの接続のプールを表すため、ほとんどのアプリケーションでは、複数のリクエスト間でもMongo::Client
のインスタンスが 1 つだけ必要になります。
Mongo::Client を閉じる
Mongo::Client
オブジェクトの使用を終了したら、次の例に示すように、オブジェクトの close
メソッドを呼び出します。これにより、オブジェクトに関連付けられているすべてのリソースが解放されます。
client.close
あるいは、Ruby のブロック構文を使用して Mongo::Client
オブジェクトを作成することもできます。この構文を使用すると、ブロックの実行が完了した後にクライアントは自動的に閉じられます。
次の例は、ブロック構文を使用して Mongo::Client
オブジェクトを作成する方法を示しています。
Mongo::Client.new("mongodb://localhost:27017") do |client| # work with the client end
API ドキュメント
Mongo::Client
Rubyドライバーを使用して オブジェクトを作成する方法について詳しくは、 Mongo ::Client のAPIドキュメントを参照してください。