ODBC ドライバーマネージャーを使用して ODBC ドライバーを設定する - Amazon Redshift

Amazon Redshift は、2025 年 11 月 1 日以降、新しい Python UDF の作成をサポートしなくなります。Python UDF を使用する場合は、その日付より前に UDF を作成してください。既存の Python UDF は引き続き通常どおり機能します。詳細については、ブログ記事を参照してください。

ODBC ドライバーマネージャーを使用して ODBC ドライバーを設定する

Linux では、ODBC ドライバーマネージャーを使用して ODBC 接続を設定します。ODBC ドライバーマネージャーは設定ファイルを使用して ODBC データソースおよびドライバーを定義および設定します。使用する ODBC ドライバーマネージャーは、使用するオペレーティングシステムによって異なります。

unixODBC ドライバーマネージャーを使用して ODBC ドライバーを設定する

Amazon Redshift ODBC ドライバーを設定するには、以下のファイルが必要です。

  • amazon.redshiftodbc.ini

  • odbc.ini

  • odbcinst.ini

デフォルトの場所にインストールした場合、amazon.redshiftodbc.ini 設定ファイルは /opt/amazon/redshiftodbcx64 にあります。

また、/opt/amazon/redshiftodbcx64 の下に、odbc.iniodbcinst.ini のサンプルファイルがあります。これらのファイルは、Amazon Redshift ODBC ドライバーとデータソース名 (DSN) の設定例として使用できます。

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

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

odbc.ini および odbcinst.ini ファイルについては、ユーザーのホームディレクトリにある設定ファイルを使用するか、別のディレクトリに新しいバージョンを作成します。デフォルトでは、Linux オペレーティングシステムには、ユーザーのホームディレクトリ (/home/$USER または ~/.) に odbc.ini ファイルと odbcinst.ini ファイルが必要です。これらの既定のファイルは隠しファイルで、各ファイル名の前にドット (.) が表示されます。これらのファイルは、-aフラグを使用してディレクトリの内容をリストした場合にのみ表示されます。

odbc.ini ファイルと odbcinst.ini ファイルに対してどちらのオプションを選択しても、ファイルを変更してドライバーと DSN 設定情報を追加します。新しいファイルを作成する場合は、これらの設定ファイルの場所を指定する環境変数を設定する必要もあります。

デフォルトでは、ODBC ドライバーマネージャーは、隠しバージョンの odbc.ini および odbcinst.ini 設定ファイル (.odbc.ini.odbcinst.ini という名前) を使用して設定し、ホームディレクトリに配置します。また、ドライバーのインストールディレクトリの amazon.redshiftodbc.ini ファイルを使用するように設定されています。これらの設定ファイルを他の場所に保存する場合は、ドライバーマネージャーがファイルを見つけることができるように、次に説明する環境変数を設定します。

unixODBC を使用している場合は、次の手順に従います。

  • odbc.ini のファイルのフルパスとファイル名に ODBCINI を設定します。

  • odbcinst.ini のファイルを含むディレクトリのフルパスに ODBCSYSINI を設定します。

  • amazon.redshiftodbc.ini のファイルのフルパスとファイル名に AMAZONREDSHIFTODBCINI を設定します。

以下は、上記の値を設定する例です。

export ODBCINI=/usr/local/odbc/odbc.ini export ODBCSYSINI=/usr/local/odbc export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini

Linux でデータソース名 (DSN) を使用して接続を設定する

データソース名 (DSN) を使用してデータストアに接続する場合は、データソース名 (DSN) を定義するように odbc.ini ファイルを設定します。odbc.ini ファイルのプロパティを設定して、データストアの接続情報を指定する DSN を作成します。

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

[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 オペレーティングシステムでの、64 ビット ODBC ドライバーを使用する odbc.ini の設定の例を示します。

[ODBC Data Sources] Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64) [Amazon_Redshift_x64] Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com Port=5932Database=dev locale=en-US

Linux で DSN を使用しない接続を設定する

DSN を使用しない接続を介してデータストアに接続するには、odbcinst.ini ファイルでドライバーを定義します。次に、アプリケーションに DSN を使用しない接続文字列を指定します。

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

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

次に、Linux オペレーティングシステムでの、64 ビット ODBC ドライバーを使用する odbcinst.ini の設定の例を示します。

[ODBC Drivers] Amazon Redshift ODBC Driver (x64)=Installed [Amazon Redshift ODBC Driver (x64)] Description=Amazon Redshift ODBC Driver (64-bit) Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so