メニュー
Amazon Redshift
管理ガイド (API Version 2012-12-01)

Linux および Mac OS X オペレーティングシステムで ODBC ドライバーを設定する

Linux および Mac OS X オペレーティングシステムでは、ODBC ドライバーマネージャーを使用して ODBC 接続を設定します。ODBC ドライバーマネージャーは設定ファイルを使用して ODBC データソースおよびドライバーを定義および設定します。使用する ODBC ドライバーマネージャーは、使用するオペレーティングシステムによって異なります。Amazon Redshift ODBC ドライバーを設定するために使用できる ODBC ドライバーマネージャーの詳細については、「システム要件」 (Linux オペレーティングシステムの場合) および「システム要件」 (Mac OS X オペレーティングシステムの場合) を参照してください。

Amazon Redshift ODBC ドライバーを設定するには、amazon.redshiftodbc.iniodbcinst.ini、および odbc.ini の 3 つのファイルが必要です。

デフォルトの場所にインストールした場合、amazon.redshiftodbc.ini 設定ファイルは以下のいずれかのディレクトリにあります。

  • /opt/amazon/redshiftodbc/lib/32 (Linux オペレーティングシステムの 32 ビットドライバーの場合)

  • /opt/amazon/redshiftodbc/lib/64 (Linux オペレーティングシステムの 64 ビットドライバーの場合)

  • /opt/amazon/redshift/lib/universal (Mac OS X のドライバーの場合)

さらに、/opt/amazon/redshiftodbc/Setup (Linux の場合) または /opt/amazon/redshift/Setup (Mac OS X の場合) には、Amazon Redshift ODBC ドライバーとデータソース名 (DSN) を設定するための例として使用できる odbc.ini および odbcinst.ini サンプルファイルがあります。

設定ファイルに Amazon Redshift ODBC ドライバーのインストールディレクトリを使用することは推奨されません。Setup ディレクトリのサンプルファイルは例示のみを目的としています。Amazon Redshift ODBC ドライバーを後で再インストールするか、新しいバージョンにアップグレードする場合、インストールディレクトリは上書きされ、これらのファイルに対して行われた変更はすべて失われます。

これを回避するには、インストールディレクトリ以外のディレクトリに amazon.redshiftodbc.ini ファイルをコピーする必要があります。このファイルをユーザーのホームディレクトリにコピーする場合は、隠しファイルにするためにファイル名の先頭にピリオド (.) を追加します。

odbc.ini ファイルと odbcinst.ini ファイルについては、ユーザーのホームディレクトリ内の設定ファイルを使用するか、別のディレクトリに新しいバージョンを作成する必要があります。デフォルトでは、Linux または Mac OS X オペレーティングシステムは、ユーザーのホームディレクトリ (/home/$USER または ~/.) に .odbc.ini ファイルと .odbcinst.ini ファイルを格納します。これらのデフォルトのファイルは隠しファイルであり (ファイル名の先頭にピリオド (.) があります)、ディレクトリの内容を一覧表示するために -a フラグを使用するときにのみ表示されます。

選択するディレクトリに関係なく、odbc.ini ファイルと odbcinst.ini ファイルを編集してドライバーおよび DSN 設定情報を追加する必要があります。新しいファイルを作成する場合は、これらの設定ファイルの場所を指定する環境変数を設定する必要もあります。

odbc.ini ファイルの設定

odbc.ini ファイルを使用してデータソース名 (DSN) を定義します。

Linux オペレーティングシステムでは次の形式を使用します。

Copy
[ODBC Data Sources] driver_name=dsn_name [dsn_name] Driver=path/driver_file Host=cluster_endpoint Port=port_number Database=database_name locale=locale

次の例は、Linux オペレーティングシステムでの odbc.ini の設定を示しています。

Copy
[ODBC Data Sources] Amazon_Redshift_x32=Amazon Redshift (x86) Amazon_Redshift_x64=Amazon Redshift (x64) [Amazon Redshift (x86)] Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com Port=5932 Database=dev locale=en-US [Amazon Redshift (x64)] Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com Port=5932 Database=dev locale=en-US

Mac OS X オペレーティングシステムでは次の形式を使用します。

Copy
[ODBC Data Sources] driver_name=dsn_name [dsn_name] Driver=path/libamazonredshiftodbc.dylib Host=cluster_endpoint Port=port_number Database=database_name locale=locale

次の例は、Mac OS X オペレーティングシステムでの odbc.ini の設定を示しています。

Copy
[ODBC Data Sources] Amazon_Redshift_dylib=Amazon Redshift DSN for Mac OS X [Amazon Redshift DSN for Mac OS X] Driver=/opt/amazon/redshift/lib/universal/libamazonredshiftodbc.dylib Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com Port=5932 Database=dev locale=en-US

odbcinst.ini ファイルの設定

odbcinst.ini ファイルを使用して ODBC ドライバーを定義します。

Linux オペレーティングシステムでは次の形式を使用します。

Copy
[ODBC Drivers] driver_name=Installed ... [driver_name] Description=driver_description Driver=path/driver_file ...

次の例は、Linux オペレーティングシステムでデフォルトのディレクトリにインストールされた 32 ビットドライバーと 64 ビットドライバーの両方の odbcinst.ini 設定を示しています。

Copy
[ODBC Drivers] Amazon Redshift (x86)=Installed Amazon Redshift (x64)=Installed [Amazon Redshift (x86)] Description=Amazon Redshift ODBC Driver (32-bit) Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so [Amazon Redshift (x64)] Description=Amazon Redshift ODBC Driver (64-bit) Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so

Mac OS X オペレーティングシステムでは次の形式を使用します。

Copy
[ODBC Drivers] driver_name=Installed ... [driver_name] Description=driver_description Driver=path/libamazonredshiftodbc.dylib ...

次の例は、Mac OS X オペレーティングシステムでデフォルトのディレクトリにインストールされたドライバーの odbcinst.ini 設定を示しています。

Copy
[ODBC Drivers] Amazon RedshiftODBC DSN=Installed [Amazon RedshiftODBC DSN] Description=Amazon Redshift ODBC Driver for Mac OS X Driver=/opt/amazon/redshift/lib/universal/libamazonredshiftodbc.dylib

ドライバー設定ファイルの環境変数の設定

Amazon Redshift ODBC ドライバーを正しく機能させるには、以下で説明するように多くの環境変数を設定する必要があります。

ドライバーマネージャーライブラリへのパスを指定する環境変数を設定します。

必要に応じて、amazon.redshiftodbc.ini ファイルを指すように AMAZONREDSHIFTODBCINI を設定します。AMAZONREDSHIFTODBCINI ではファイル名を含む完全パスを指定する必要があります。この変数を設定するか、システムが検索で見つける場所にこのファイルを配置する必要があります。amazon.redshiftodbc.ini ファイルを見つけるとき、次の検索順序が使用されます。

  1. AMAZONREDSHIFTODBCINI 環境変数が定義されている場合、ドライバーはこの環境変数で指定されているファイルを検索します。

  2. AMAZONREDSHIFTODBCINI 環境変数が定義されていない場合、ドライバーはその独自のディレクトリ (ドライバーバイナリを含むディレクトリ) で探します。

  3. amazon.redshiftodbc.ini ファイルが見つからない場合、ドライバーはドライバーマネージャーの設定の自動的な特定と接続を試みます。ただし、この場合、エラーメッセージは正しく表示されません。

odbc.ini ファイルと odbcinst.ini ファイルをユーザーのホームディレクトリ以外のディレクトリに格納する場合は、設定ファイルの場所を指定する環境変数を設定する必要もあります。

  • odbc.ini ファイルを指すように ODBCINI を設定します。

  • odbcinst.ini ファイルを含んでいるディレクトリを指すように ODBCSYSINI を設定します。

Linux を使用している場合、ドライバーマネージャーライブラリは /usr/local/lib ディレクトリ、odbc.ini ファイルと amazon.redshiftodbc.ini ファイルは /etc ディレクトリ、odbcinst.ini ファイルは /usr/local/odbc ディレクトリにあるため、次の例に示すように環境変数を設定します。

Copy
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib export ODBCINI=/etc/odbc.ini export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini export ODBCSYSINI=/usr/local/odbc

Mac OS X を使用している場合、ドライバーマーネージャーライブラリは /usr/local/lib ディレクトリ、odbc.ini ファイルと amazon.redshiftodbc.ini ファイルは /etc ディレクトリ、odbcinst.ini ファイルは /usr/local/odbc ディレクトリにあるため、次の例に示すように環境変数を設定します。

Copy
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/usr/local/lib export ODBCINI=/etc/odbc.ini export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini export ODBCSYSINI=/usr/local/odbc