Docs Menu
Docs Home
/
MongoDB Atlas
/ / /

ODBC ドライバーで Atlas SQL に接続する

項目一覧

  • サポートされている認証メカニズム
  • 前提条件
  • 手順

このページでは、フェデレーティッドデータベースインスタンスに接続するために MongoDB ODBCドライバーをインストールして構成する方法について説明します。

ODBC ドライバーは現在、次のアーキテクチャで利用できます。

  • Windows

  • Ubuntu 22.04 (x86_64)

SCRAM-SHA-1、SCRAM-SHA-256MONGODB-X509、およびAWS を使用した MongoDB パスワードレス認証 を使用して認証できます。

  • 配置されたクラスターと Atlas Data Federation を持つAtlas アカウント

    詳細については、 「 Atlas Data Federation の使用 」を参照してください。

  • 1 つ以上のデータ ストアにマッピングされたフェデレーティッドデータベースインスタンス。

    注意

    データの一部または全部が Atlas クラスターから取得されている場合、そのクラスターで Atlas SQL を利用するには、MongoDB バージョン 5.0 以降を使用する必要があります。

  • ODBC ドライバーを使用してフェデレーティッドデータベースインスタンスに接続したいアプリケーションまたは BI。

  • Microsoft Visual C++ Redistributable17.0 以上(Microsoft C および C++(MSVC)ランタイム ライブラリのインストール用)

    注意

    C++ ランタイム ライブラリがインストールされていない場合、ODBC ドライバーは次のエラーを返します。

    The specified module could not be found (path of the dll which exists and has the proper permission).
  • unixODBC パッケージ:

    sudo apt install unixodbc
  • ODBC Manager パッケージ:

    sudo apt install odbcinst
  • 配置されたクラスターと Atlas Data Federation を持つAtlas アカウント

    詳細については、 「 Atlas Data Federation の使用 」を参照してください。

  • 1 つ以上のデータ ストアにマッピングされたフェデレーティッドデータベースインスタンス。

    注意

    データの一部または全部が Atlas クラスターから取得されている場合、そのクラスターで Atlas SQL を利用するには、MongoDB バージョン 5.0 以降を使用する必要があります。

  • ODBC ドライバーを使用してフェデレーティッドデータベースインスタンスに接続したいアプリケーションまたは BI。

  • Microsoft Visual C++ Redistributable17.0 以上(Microsoft C および C++(MSVC)ランタイム ライブラリのインストール用)

    注意

    C++ ランタイム ライブラリがインストールされていない場合、ODBC ドライバーは次のエラーを返します。

    The specified module could not be found (path of the dll which exists and has the proper permission).

ODBC ドライバー を使用すると、 ODBC API を受け入れる SQL ベースのツールに接続できます。

1
2

MongoDB リリースチームは、特定の MongoDB パッケージが有効で、改変されていない MongoDB リリースであることを証明するために、すべてのソフトウェア パッケージにデジタル署名しています。 ODBC ドライバー バイナリを SHA 256キーに対して検証するには、次の手順を実行します。

  1. MongoDB ODBC ドライバー ダウンロード ページ から Windows x の ファイルをダウンロードします。.sha25664

  2. 次の Powershell スクリプトを使用して、署名ファイルを MongoDB インストーラー ハッシュと比較します。

    $sigHash = (Get-Content $Env:HomePath\Downloads\mongodbodbc.msi.sha256 | Out-String). SubString(0,64).ToUpper(); `
    $fileHash = (Get-FileHash $Env:HomePath\Downloads\mongodbodbc.msi).Hash.Trim(); `
    echo $sigHash; echo $fileHash; `
    $sigHash -eq $fileHash

    このコマンドは、次の 3 行を出力します。

    • MongoDB から直接ダウンロードした SHA 256ハッシュ。

    • MongoDB からダウンロードした MongoDB ODBC ドライバー バイナリから計算された SHA 256ハッシュ。

    • ハッシュが一致するかどうかに応じて true または false の結果が返されます。

    ハッシュが一致すると、MongoDB バイナリが検証されます。

1

ODBC ドライバーをインストールするには、ダウンロードしたインストール ファイルを実行して Atlas SQL ODBC セットアップ ウィザードを開きます。 セットアップ ウィザード の手順に従います。

2

ODBC 接続を構成するには次の手順に従います。

  1. ODBC データソース 管理者を開きます。

    注意

    64 ビット プロセッサを使用する場合は、必ず 64 ビット ODBC データソース マネージド を開きます。

  2. [システム DSN ] タブに移動します。

  3. 新しいシステム DSNを追加します。

  4. データソースのドライバーを選択するプロンプトが表示されたら、 MongoDB Atlas SQL ODBC Driverを選択します。

  5. 接続情報を入力します。 次の項目を入力する必要があります。

    注意

    Atlas SQL Interface モーダルを使用して、Connectから接続情報を取得できます。

    フィールド
    説明
    DSN
    新しい DSN の名前。
    ユーザー名
    データベースに接続するために使用するデータベースユーザー名。
    パスワード
    データベースユーザーのパスワード。
    MongoDB URI
    MongoDB 配置 URI 。
    Database
    接続するデータベースの名前。
    最大値を有効にする
    チェックボックスをオンにすると、最大string長は 4000 文字になります。 Server Management Studio などの ツールでは、最大長が不明な変数長BI MicrosoftSQLstringデータをサポートできない場合、このオプションを有効にする必要があります。
  6. 必要な接続情報を入力したら、ODBC データソース管理者との接続をテストできます。

1

注意

Copy linkをクリックして、後のステップで署名ファイルのダウンロードリンクを作成するために必要な URL を保存します。

curl https://translators-connectors-releases.s3.amazonaws.com/mongosql-odbc-driver/ubuntu2204/1.4.0/release/mongoodbc.tar.gz --output mongoodbc.tar.gz
2

MongoDB リリースチームは、特定の MongoDB パッケージが有効で、改変されていない MongoDB リリースであることを証明するために、すべてのソフトウェア パッケージにデジタル署名しています。 atlas-sql-odbc.ascキーはpgp.mongodb.comで入手できます。

  1. .sigファイルをダウンロードするには、次のコマンドを実行します。

    curl -LO https://translators-connectors-releases.s3.amazonaws.com/mongosql-odbc-driver/ubuntu2204/1.4.0/release/mongoodbc.tar.gz.sig
  2. 次のコマンドを実行して、キー ファイルをダウンロードし、インポートします。

    curl -LO https://pgp.mongodb.com/atlas-sql-odbc.asc
    gpg --import atlas-sql-odbc.asc
    gpg: key 1CCF1A1263CDD699: public key "Atlas SQL ODBC Release Signing Key <packaging@mongodb.com>" imported
    gpg: Total number processed: 1
    gpg: imported: 1
  3. 以下のコマンドを実行して、MongoDB インストール ファイルを検証します。

    gpg --verify mongoodbc.tar.gz.sig mongoodbc.tar.gz

    GPG は次の応答を返す必要があります。

    gpg: Signature made Wed May 22 13:24:36 2024 MDT
    gpg: using RSA key 0C5F007ABC491E4A
    gpg: Good signature from "Atlas SQL ODBC Release Signing Key <packaging@mongodb.com>" [unknown]

    パッケージが適切に署名されているが、ローカルの trustdb の署名キーを現在信頼していない場合、gpg は次のメッセージも返します。

    gpg: WARNING: This key is not certified with a trusted signature!
    gpg: There is no indication that the signature belongs to the owner.
    Primary key fingerprint: 1CF5 B0D7 B2F8 9E16 52D8 BA79 0C5F 007A BC49 1E4A

    次のエラー メッセージが表示される場合は、正しい公開キーをインポートしたことを確認してください。

    gpg: Can't check signature: public key not found
3

次の例では、アーカイブの内容を/usr/local/lib/mongoodbcに抽出します。 mongoodbcディレクトリには、 LICENSEファイル、 README.MDファイル、 binディレクトリが含まれています。 binディレクトリにはlibatsql.so ODBC ドライバー ライブラリが含まれています。

sudo tar -zxf mongoodbc.tar.gz --directory /usr/local/lib
1
  1. 次のコマンドを実行します:

    odbcinst -j
  2. DRIVERSSYSTEM DATA SOURCESUSER DATA SOURCESの構成ファイルの場所に注目してください。

    例:

    unixODBC 2.3.9
    DRIVERS............: /etc/odbcinst.ini
    SYSTEM DATA SOURCES: /etc/odbc.ini
    FILE DATA SOURCES..: /etc/ODBCDataSources
    USER DATA SOURCES..: /home/ubuntu/.odbc.ini
    SQLULEN Size.......: 8
    SQLLEN Size........: 8
    SQLSETPOSIROW Size.: 8
2
  1. 希望エディタでodbcinst.iniファイルを開きます。

    例:

    sudo vim /etc/odbcinst.ini
  2. 次のエントリを ファイルに追加し、 libatsql.so ODBC ドライバー ライブラリへのパスを指定します。

    例:

    [ODBC Drivers]
    MongoDB Atlas SQL ODBC Driver = Installed
    [MongoDB Atlas SQL ODBC Driver]
    Driver=/usr/local/lib/mongoodbc/bin/libatsql.so
3

複数のユーザーが DSN を共有する場合は、システム DSN を設定します。 複数のユーザーが DSN を共有できない場合は、ユーザー DSN を設定します。 ユーザーが DSN を使用する単一ユーザーの場合は、システム DSN またはユーザー DSN を構成できます。

  1. 希望エディターでSYSTEM DATA SOURCESファイルまたはUSER DATA SOURCESファイルを開きます。

    システム DSN の例:

    sudo vim /etc/odbc.ini

    ユーザー DSN の例:

    sudo vim /home/ubuntu/.odbc.ini
  2. 次のエントリを ファイルに追加し、適切な値を指定します。

    注意

    Atlas SQL Interface モーダルを使用して、Connectから接続情報を取得できます。

    フィールド
    説明
    Password
    データベースユーザーのパスワード。
    Driver
    libatsql.so ODBC ドライバー ライブラリへのパス。
    Database
    接続するデータベースの名前。
    User
    データベースに接続するために使用するデータベースユーザー名。
    Uri
    MongoDB 配置 URI。
    UnicodeTranslationOption
    Atlas SQL の Unicode エンコード。 をutf16に設定します。
    enable_max_string_length
    任意。 最大string長を 4000 文字に強制するフラグ。 有効にするには値を1に設定し、無効にするには値を0に設定します。 省略された場合、デフォルトは0となります。 Server Management Studio などの ツールでは、最大長が不明な変数長BI MicrosoftSQLstringデータをサポートできない場合、このオプションを有効にする必要があります。

    例:

    [ODBC Data Sources]
    MongoDB_Atlas_SQL = "MongoDB Atlas SQL ODBC Driver"
    [MongoDB_Atlas_SQL]
    Password = your_password
    Driver = /usr/local/lib/mongoodbc/bin/libatsql.so
    Database = sample_mflix
    User = your_username
    Uri = mongodb://datalake.region.a.query.mongodb.net/?ssl=true
    UnicodeTranslationOption = utf16
4

次のコマンドを実行します:

iusql -v MongoDB_Atlas_SQL

次の例は、成功した接続を示しています。

+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+

接続が失敗した場合は、Atlas Data Federation インスタンスに対する構成ファイルの詳細を確認します。

注意

次の警告は ODBC ドライバーの操作には影響しません。

[MongoDB][API] Buffer size "0" not large enough for data.

ODBC ドライバーはiusqlクエリ関数をサポートしていません。

戻る

JDBC ドライバー