このページでは、MongoDB Shell(mongosh)を介して、フェデレーティッドデータベースインスタンスに接続する方法について説明します。
前提条件
1 つ以上のデータ ストアにマッピングされたフェデレーティッドデータベースインスタンス。
注意
データの一部または全部が Atlas クラスターから取得されている場合、そのクラスターで MongoSQL を利用するには、 MongoDBバージョン 5.0 以降を使用する必要があります。
手順
Atlasで、プロジェクトのフェデレーティッドデータベースインスタンスにGoします。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Services見出しの下のData Federationをクリックします。
Data Federationページが表示されます。
MongoDB Shell をまだインストールしていない場合は、インストールします。
MongoDB Shell がインストールされていない場合:
接続モーダル内の I do not have the MongoDB Shell installed を選択します。
モーダル ドロップダウン メニューからオペレーティング システムを選択します。
オペレーティング システムに合わせてモーダルに表示されるインストール手順に従います。
(オプション)
mongoshのインストールが成功していることを確認します。インストールが成功したかどうかを確認するには、ターミナルで次のコマンドを実行します。
mongosh --version インストールが成功した場合、
mongoshにバージョンが表示されます。
MongoDB Shell がすでにインストールされている場合:
接続モーダル内の I have the MongoDB Shell installed を選択します。
モーダルのドロップダウンメニューから
mongoshを選択します。注意
MongoDB Shell (
mongosh)は、モーダル ドロップダウン メニューのmongoバージョンとは別です。mongoshがインストールされていることを確認するには、ターミナルで次のコマンドを実行します。mongosh --version mongoshがインストールされている場合はバージョンが表示されます。
認証方法を選択します。
認証方法は、データベースのアクセスがどのように構成されているかによって異なります。データベースのアクセスの詳細については、 「データベース ユーザーの設定」 を参照してください。
選択肢は次の通りです:
Password (SCRAM)または、
X.509.
Atlas Data Federation から、認証方法ごとの接続文字列が提供されます。
サポートされているすべての認証メカニズムの詳細については、 SQLインターフェイス認証 を参照してください。
集計構文と短縮形式の構文
MongoSQL は、 SQLクエリを構築するための集計パイプラインステージ構文と、短縮形式の構文をサポートしています。MongoDB Shell でクエリを書く際はどちらの構文でも使用できます。
集計パイプライン ステージの構文
MongoDB クエリは、$sql 集計パイプラインステージを使用して書き込みできます。$sql に提供する必要があるプロパティのリストについては、$sql を参照してください。
次の例では、$sql構文を使用して MongoDB ステートメント select * from Users limit 2 を実行します。
db.aggregate( [ { $sql: { statement: "SELECT * FROM users LIMIT 2", format: "jdbc", dialect: "mongosql" } } ] )
注意
MongoSQL は、mongosql のダイアレクトを使用します。
短縮構文
短縮構文または db.sql を使用して、MongoDB ステートメントを直接指定できます。
重要
短縮形式の構文は安定しておらず、将来変更される可能性があります。
db.sql(` SELECT * FROM users LIMIT 2 `);