IBM Cloud Docs
MongoDBとの接続

MongoDBとの接続

コマンド・ライン・クライアントから MongoDB データベースにアクセスすると、データベース内に作成されたデータ構造を直接的に操作およびモニターできます。 これを使用して、データを照会および更新したり、管理操作を実行したり、パフォーマンスをモニターしたりします。

インストール

MongoDB シェルは、 MongoDB ディストリビューションの一部として使用可能です。 ここからダウンロードしてください。

接続中

接続文字列は、デプロイメントの_「概要」「エンドポイント」_パネルに表示されます。Cloud Databases CLI プラグインAPI から取得することもできます。

MongoDB シェルがインスタンスに接続するために必要な情報は、接続ストリングの「cli」セクションにあります。 参照用に、接続文字列の構成要素を次の表に示します。

mongo/cli 接続情報
フィールド名 索引 説明
Bin 接続を作成するための推奨バイナリー。この場合は mongosh になります。
Composed デプロイメントへの接続を確立するための構成済みのコマンド。 このコマンドは、 Bin 実行可能ファイル、 Environment 変数設定を結合し、以下を使用します。
Environment 環境変数として設定したキー/値のリスト。
Arguments 0... Bin フィールドに示されているコマンドに引数として渡される情報
Certificate Base64 アプリケーションが適切なサーバーに接続することを確認するために使用する自己署名証明書。 base64 でエンコードされています。
Certificate Name 自己署名証明書に割り当てられた名前。
Type この接続情報を使用するパッケージのタイプ。この場合は cli です。
  • 0... は、1 つの配列にこれらのエントリーが 1 つ以上ある可能性があることを示しています。

MongoDB シェルの例

mongosh -u admin -p $PASSWORD --tls --tlsCAFile c5f07836-d94c-11e8-a2e9-62ec2ed68f84 --authenticationDatabase admin --host replset/bd574ce4-7b36-4274-9976-96db98a3ac10-0.b8a5e798d2d04f2e860e54e5d042c915.databases.appdomain.cloud:30484,bd574ce4-7b36-4274-9976-96db98a3ac10-1.b8a5e798d2d04f2e860e54e5d042c915.databases.appdomain.cloud:30484
  • mongosh- コマンド自体。
  • -u - ユーザー名のパラメーター。
  • -p - パスワードのパラメーター。
  • --tls --tlsCAFile- デプロイメント用の自己署名証明書のパスと名前。
  • --authenticationDatabase - ユーザーとその資格情報が作成され、保管されているデータベース。
  • --host - レプリカ・セット名の後に、/、およびレプリカ・セットの各メンバーのホストが続きます。

IBM Cloud CLI からの MongoDB シェルの開始

MongoDB シェルがローカルにインストールされている場合は、ibmcloud cdb deployment-connections コマンドを使ってクライアント接続の作成に関わるすべての処理を行うことができます。 例えば、「example-user」を使用して「example-mongo」という名前のデプロイメントに接続するには、以下のコマンドを使用します。

ibmcloud cdb deployment-connections --start -u example-user example-mongo

コマンドはユーザーのパスワード入力を求め、その後、データベースに接続MongoDBを実行します。

--start オプションはパラメータの前に置かなければなりません。そうでなければ接続情報が返され、 MongoDBは起動しません。

自己署名証明書の使用

  1. _「エンドポイント」_パネルまたは接続情報の Base64 フィールドから証明書情報をコピーします。
  2. 必要に応じて、Base64 ストリングをテキストにデコードします。
  3. 証明書をファイルに保存します (提供される名前、または独自のファイル名を使用できます)。
  4. 証明書のパスを --tlsCAFile パラメータに指定します。

デプロイメントのデコードされた証明書を、CLI プラグインで次のコマンドを使用して表示することができます。

ibmcloud cdb deployment-cacert <INSTANCE_NAME_OR_CRN>

これにより、base64 がテキストにデコードされます。 コマンドの出力結果をコピーしてファイルに保存し、そのファイルのパスを --tlsCAFile パラメータに指定します。