ODBC Driver for MySQL

Build 23.0.8839

Linux DSN の構成

このセクションでは、以下のいくつかのLinux ディストリビューションでODBC 接続をセットアップしDSN を設定する方法を説明します:Ubuntu のようなDebian ベースのシステム、Red Hat Enterprise Linux (RHEL)、CentOS、およびFedora のようなRed Hat Linux プラットフォーム。

Linux の最小バージョン

Red Hat ベースおよびDebian ベースシステムでサポートされる最小バージョンは以下のとおりです。

OSMin. Version
Ubuntu11.04
Debian7
RHEL6.9
CentOS6.9
Fedora13
SUSE12.1

ドライバー依存関係のインストール

必要な依存関係をインストールするには、次のコマンドをルートとしてまたはsudo で実行します。

  • Debian/Ubuntu:
    apt-get install libc6 libstdc++6 zlib1g libgcc1
  • RHEL/CentOS/Fedora:
    yum install glibc libstdc++ zlib libgcc

本製品 が必要とする対応ライブラリは以下のとおりです。

Debian/Ubuntu PackageRHEL/CentOS/Fedora PackageFile
libc6glibclinux-vdso.1
libc6glibclibm.so.6
libc6glibclibrt.so.1
libc6glibclibdl.so.2
libc6glibclibpthread.so.0
libc6glibclibc.so.6
libc6glibcld-linux-x86-64.so.2
libstdc++6libstdc++libstdc++.so.6
zlib1gzliblibz.so.1
libgcc1libgcclibgcc_s.so.1

ドライバーのインストール

標準のパッケージ管理システムを使用してドライバーをインストールできます。

Ubuntu のようなDebian ベースのシステムでは、次のコマンドをroot またはsudo で実行します。

dpkg -i /path/to/driver/setup/MySQLODBCDriverforUnix.deb 

RPM パッケージ形式をサポートするシステムでは、次のコマンドをroot またはsudo で実行します。

rpm -ivh /path/to/driver/MySQLODBCDriverforUnix.rpm 

ドライバーのライセンス

次のコマンドを実行して本製品 のライセンスを取得します。評価版をアクティベートするには、<key> の入力を省略してください。

cd /opt/cdata/cdata-odbc-driver-for-mysql/bin/
sudo ./install-license.sh <key>

ドライバーマネージャー経由の接続

ドライバーマネージャーはドライバーをロードし、アプリケーションからドライバーに関数呼び出しを渡します。本製品 をドライバーマネージャーに登録して、ドライバーマネージャーのコンフィギュレーションファイルにDSN を定義する必要があります。

本製品 のインストールでは、本製品 をunixODBC ドライバーマネージャーに登録し、システムDSN を作成します。UnixODBC ドライバーマネージャーは、Python やその他多くのアプリケーションから使用できます。アプリケーションに別のドライバーマネージャーが組み込まれている可能性があります。

DSN の作成

unixODBC をインストールしてDSN を設定するには、unixODBC の使用 を参照してください。OBIEE、Informatica、およびSAS に接続するDSN を作成するには、DataDirect ドライバーマネージャーの使用 を参照してください。

MySQL への接続

次のプロパティを設定し、MySQL データに接続します。
  • Server:MySQL データベースをホスティングしているサーバーのホスト名またはIP アドレス。
  • Port:MySQL データベースをホスティングしているサーバーのポート。
  • Database(オプション):MySQL Server に接続する場合のデフォルトデータベース。設定されていない場合、MySQL は使用可能なすべてのデータベースからテーブルを返します。

MySQL への認証

MySQL は次の認証をサポートします。

  • 標準
  • NT Lan Manager(NTLM)
  • LDAP
  • SSL
  • SSH
  • Azure
  • AWS

標準認証

標準認証で認証するには、AuthSchemePassword に設定し、以下のプロパティを設定します。

  • User:認証するMySQL ユーザーのユーザー名。
  • Password:認証するMySQL ユーザーに関連付けられたパスワード。

NTLM

NTLM を使用して認証するには、AuthSchemeNTLM に設定します。

デフォルトでは、本製品 は、実行中のPC のドメインまたはMySQL インスタンスを実行しているマシンで使用されているドメインのいずれかを使用して、 ユーザー資格情報とNTLM ドメインを自動的に決定します。 ユーザー資格情報を取得するために、本製品 は現在のNTLM ユーザーを読み込みます。

異なるドメインを指定したい場合は、異なるログイン資格情報を提供するか、あるいは以下のオプションプロパティのいずれかまたはすべてを用いてターゲットNTLM バージョンを変更します。

  • User:認証するNTLM ユーザー。
  • Password:認証するNTLM ユーザーのパスワード。
  • Domain:接続するドメイン名。
  • NTLMVersion:本製品 で使用されるNTLM のバージョン。有効な値は1(デフォルト)および2です。

LDAP

LDAPユーザーとして認証するには、AuthSchemeLDAP に設定します。

LDAP 認証情報はデフォルトで自動検出されます。 別のユーザーとアカウントを指定したい場合は、 以下のオプションプロパティを設定します。

  • User:ログインするユーザー。
  • Password:ユーザーのパスワード。

SSL

SSL 認証を活用してMySQL データに安全に接続するには、以下のプロパティを設定します。

  • SSLClientCert:クライアント証明書のための証明書ストア名。クライアントとサーバーの両方のマシンでトラストストアとキーストアが保持される2-way SSL の場合に使用されます。
  • SSLClientCertPassword:クライアント証明書ストアパスワード。証明書ストアがパスワードで保護されている場合は必須です。
  • SSLClientCertSubject:TLS / SSL クライアント証明書のサブジェクト。ストア内の証明書を検索するために使用されます。
  • SSLClientCertType:; クライアントストアの証明書タイプ。
  • SSLServerCert:サーバーが受け入れ可能な証明書。

SSH

SSH 経由でリモートマシンを認証し、MySQL データにアクセスするには、以下のプロパティを設定します。

  • SSHClientCert:クライアント証明書のための証明書ストア名。
  • SSHClientCertPassword:クライアント証明書ストアがパスワードで保護されている場合、この値をストアのパスワードに設定。
  • SSHClientCertSubject:TLS / SSL クライアント証明書のサブジェクト。ストア内の証明書を検索するために使用されます。
  • SSHClientCertType:クライアントストアの証明書タイプ。
  • SSHPassword:SSH サーバーに認証するためのパスワード。
  • SSHPort:SSH 操作に使用されるポート。
  • SSHServer:認証を試行中のSSH 認証サーバー。
  • SSHServerFingerPrint:接続を試行中のホストの検証に使用される、SSH サーバ-の指紋。
  • SSHUser:SSH サーバーへの認証に使用するユーザー名。

Azure 上のMySQL

Azure AD にホストされているMySQL データベースは、Azure AD ユーザー(Azure ユーザークレデンシャルを使用)、Azure MSI(マネージドサービスID を使用)、またはAzure パスワードで認証できます。 以下の表に、3つの認証方式すべてに必要な接続パラメータを示します。

パラメータ 設定値 注記
Azure AD ユーザー AzureTenant MySQL が設置されているMicrosoft Online テナント。 注記1 参照。
AuthScheme AzureAD 注記2 参照。
Azure MSI AzureTenant MySQL が設置されているMicrosoft Online テナント。 注記1 参照。
AuthScheme AzureMSI MySQL がAzure VM 上で実行されている場合に最もよく使用されます。
OAuthClientId マネージドID のclient_identity マネージドID のトークンを取得する場合、またはVM にユーザー割り当てのマネージドID が複数ある場合に必要です。
Azure パスワード AuthScheme AzurePassword Azure 認証情報を使用して直接接続するには、Azure への接続に使用するアカウントのユーザーとパスワードを指定します。

注記

  1. AzureTenant は、一般的にcompanyname.microsoft.com の形式で提供されますが、 テナントId を指定することもできます。(テナントId は、Azure ポータル のAzure Active Directory -> プロパティページに表示されるディレクトリId と同じものです。)

    OAuthGrantTypeCODE(デフォルト)に設定されている場合、ユーザーが複数のテナントに属していない限り、AzureTenant は通常必要ありません。OAuthGrantTypeCLIENT に設定されている場合、AzureTenant は必須です。

  2. AzureAD AuthScheme は一般的に、必要なOAuth 資格情報を確立するために、カスタムOAuth アプリケーションと共に使用されます。これらは通常、アカウント識別子またはクライアントID と、アカウントパスワードまたはクライアントシークレットの形をとります。

AWS 上のMySQL

IAM ロールまたはEC2 ロールのいずれかを使用して、AWS でホストされているMySQL データベースに接続できます。

AWS IAM Roles

AuthSchemeAwsIAMRoles に設定します。

多くの場合、認証にはAWS ルートユーザーのダイレクトなセキュリティ認証情報ではなく、IAM ロールを使用することをお勧めします。AWS ルートユーザーのAWSAccessKey およびAWSSecretKey を指定している場合、ロールは使用できない場合があります。

AWS ロールとして認証するには、次のプロパティを設定します。

  • AWSAccessKey: The access key of the IAM user to assume the role for.
  • AWSSecretKey: The secret key of the IAM user to assume the role for.
  • AWSRoleARN: Specify the Role ARN for the role you'd like to authenticate with. This will cause the 本製品 to attempt to retrieve credentials for the specified role.

EC2 Instances

AuthSchemeAwsEC2Roles に設定します。

EC2 インスタンスから本製品 を使用していて、そのインスタンスにIAM ロールが割り当てられている場合は、 認証にIAM ロールを使用できます。本製品 は自動的にIAM ロールの認証情報を取得し、それらを使って認証するため、AWSAccessKey およびAWSSecretKey を指定する必要はありません。

If you are also using an IAM role to authenticate, you must additionally set AWSRoleARN to the Role ARN for the role you want to authenticate with.

IMDSv2 サポート

MySQL 本製品 は、IMDSv2 をサポートしています。IMDSv1 とは異なり、新バージョンでは認証トークンが必須です。エンドポイントおよびレスポンスは、両バージョンで同じです。

IMDSv2 では、MySQL 本製品 はまずIMDSv2 メタデータトークンの取得を試み、それを使用してAWS メタデータエンドポイントを呼び出します。トークンを取得できない場合、本製品 はIMDSv1 を使用します。

ドライバーエンコーディングの設定

ODBC ドライバーは、ODBC ドライバーマネージャーで使用するエンコーディングを指定する必要があります。デフォルトでは、Unix 用のCData ODBC ドライバーはunixODBC と互換性のあるUTF-16 を使用するように設定されていますが、他のドライバーマネージャーでは代替エンコーディングが必要な場合があります。

また、ANSI ODBC API を使用するアプリケーションからODBC ドライバーを使用している場合は、ANSI コードページを設定する必要があります。例えば、ANSI アプリケーションに日本語の文字をインポートするには、設定ファイル'/opt/cdata/cdata-odbc-driver-for-mysql/lib/cdata.odbc.mysql.ini' でコードページを指定できます。

[Driver]
AnsiCodePage = 932

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839