Amazon RedshiftへODBC接続する手順を徹底解説!

redshift_logo

今回の開発環境はGoogle Cloud Engine(以下GCE)で立てたVMインスタンスにVS codeからSSH接続して環境構築していきます。下記ブログを参考にGCEでVMインスタンスをたて接続できるようにしておいてください。本記事はOSがDebianであることを前提に進めます。

目次

ODBC接続とは?

ODBC接続(Open Database Connectivityの略)は、異なるデータベースシステム間でのデータのやり取りを可能にするための標準プロトコルです。 簡単に説明すると、ODBCはデータベースとアプリケーションの間に「通訳」のような役割を果たします。例えば、あなたがExcelを使用して特定のデータベースから情報を取得したいとします。しかし、そのデータベースはExcelと直接「話す」ことができません。ここでODBCが登場します。 ODBCドライバー(ソフトウェア)をインストールすると、Excelはこのドライバーを通じてデータベースと通信できるようになります。ドライバーはExcelからの要求をデータベースが理解できる形式に変換し、データベースの応答をExcelが理解できる形式に変換します。 このようにして、ODBCは異なるシステム間の通信を可能にし、アプリケーション開発者やエンドユーザーが複数のデータベースと効率的に作業できるようにするためのシステムです。

大まかなフロー

  1. Amazon Redshift ODBC ドライバーのインストール
  2. ODBCドライバーマネージャーのインストール
  3. ODBCドライバーマネージャーの設定
  4. 接続

Amazon Redshift ODBC ドライバーのインストール

まず、Amazon Redshift ODBC ドライバーのインストールをしていきます。下記コマンドを実行して64ビットDebianドライバーのインストールファイルをダウンロードしてきます。

https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86_64.deb

インストールファイルのダウンロードが完了したら、下記コマンドを実行しインストールを行なってください。

sudo apt install ./AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86_64.deb

これで、Amazon Redshift ODBC ドライバーのインストールは完了です。

ODBCドライバーマネージャーのインストール

次にODBCドライバーマネージャーをインストールしていきます。まずは、下記コマンドを実行しDebianシステムのパッケージリストを最新の状態に更新します。

sudo apt-get update

次に、ODBCドライバーマネージャーをインストールしていきます。今回はUnixODBCというODBCドライバーマネージャーを使います。下記コマンドを実行しツールのインストールを行なってください。

sudo apt-get install unixodbc unixodbc-dev

これで、ODBCドライバーマネージャーのインストールは完了です。

ODBCドライバーマネージャーの設定

概要

UnixODBCをインストールした後、Amazon Redshift ODBCドライバーを設定する必要があります。UnixODBCは通常、ODBCデータソース名(DSN)を設定するためにodbc.iniファイルと、ドライバー設定を格納するためにodbcinst.iniファイルを使用します。これらのファイルは通常、/etcディレクトリにあります。

  • /etc/odbcinst.ini
    • このファイルには、インストールされた各ODBCドライバーの設定が含まれます。
    • Amazon Redshift ODBCドライバーのエントリを追加します。
  • /etc/odbc.ini
    • このファイルは、ODBCデータソースの接続情報を含みます。
    • データソース名(DSN)を設定し、接続の詳細(ホスト名、データベース名、ユーザー名、パスワードなど)を指定します。

これらのファイルを編集していきます。ファイルの編集時はviで行なってください。

odbcinst.iniの編集

odbcinst.iniは下記を追記してください。

[Redshift]
Description = Amazon Redshift ODBC Driver
Driver = driverのパス

driverのパスは下記コマンドを実行して確認してください。

dpkg -L AmazonRedshift-64bit

拡張子が「.so」のパスをコピーして追記してください。

odbc.iniの編集

ここには、接続先の情報を追記します。下記のようにodbc.iniファイルを編集します。

[MyRedshiftDB] 
Driver = Redshift 
Server = [あなたのRedshiftサーバーのホスト名またはIP] 
Database = [データベース名] Port = 5439 
UID = [ユーザー名] 
PWD = [パスワード]

接続

これらの作業が完了すると、環境設定は終了です。下記コマンドを実行し、Redshiftに接続できるか検証してください。

isql -v MyRedshiftDB
CTA
  • URLをコピーしました!
  • URLをコピーしました!
この記事を書いた人
目次