Red Hat Training
A Red Hat training course is available for Red Hat JBoss Data Virtualization
10.5. ODBC の設定
10.5.1. Microsoft Windows での ODBC オプションの設定
前提条件
- 管理権限を使用してワークステーションにログインする必要があります。
- コントロールパネルのデータソース (ODBC) アプレットを使用して新しいデータソース名が追加されている必要があります。設定する各データソース名は Teiid System 内の 1 つの VDB のみにアクセスできます。複数の VDB を利用できるようにするには、複数のデータソース名を設定する必要があります。
手順10.5 Microsoft Windows でのデータソース名 (DSN) の設定
- Start メニューから Settings - Control Panel と選択します。
- Control Panel が表示されます。Administrative Tools をダブルクリックします。
- Data Sources (ODBC) をダブルクリックします。
- ODBC Data Source Administrator アプレットが表示されます。追加する DSN のタイプに関連するタブをクリックします。
- Create New Data Source ダイアログボックスが表示されます。Select a driver for which you want to set up a data source テーブルで PostgreSQL Unicode を選択します。
- Finish をクリックします。
- Data Source Name 編集ボックスで、このデータソースに割り当てる名前を入力します。
- Database 編集ボックスで、このデータソースからアクセスする仮想データベースの名前を入力します。
- Server 編集ボックスで、Teiid ランタイムのホスト名または IP アドレスを入力します。
注記
ファイアウォールまたは NAT アドレスを介して接続している場合は、ファイアウォールアドレスまたは NAT アドレスを入力する必要があります。 - Port 編集ボックスで、システムが ODBC リクエストをリッスンするポート番号を入力します (Red Hat JBoss Data Virtualization のデフォルトでは、ODBC リクエストをポート 35432 でリッスンします)。
- User Name および Password 編集ボックスで、Teiid ランタイムアクセスのユーザー名およびパスワードを入力します。
- SSL モードは無効 (disabled) のままにしておきます (現在、SSL 接続はサポートされていません)。
- データソースの詳細を Description フィールドに入力します。
- Datasource ボタンをクリックし、オプションを設定します。Parse Statements、Recognize Unique Indexes、Maximum、Text as LongVarChar、および Bool as Char にチェックマークを入れます。MaxVarChar を 255、Max LongVarChar を 8190、Cache Size を 100、SysTable Prefixes を dd_: に設定します。2 ページ目では、LF、Server side prepare、default、7.4+ をクリックします。 Extra Opts を 0x0 に設定します。
- Save をクリックします。Red Hat JBoss Data Virtualization が稼働している場合は、任意で Test をクリックすると接続を検証できます。
結果:
Excel や Access などのアプリケーションを使用して VDB でデータをクエリーできるようになりました。
表10.1 Red Hat JBoss Data Virtualization 用の主な ODBC 設定
| 名前 | 説明 |
|---|---|
| Updateable Cursor および Row Versioning | 使用不可。 |
| serverside prepare、Parse Statements および Disallow Premature の使用 | 「Use serverside prepare」を有効にし、「Parse Statements」/「Disallow Premature」を無効にすることを推奨します。 |
| SSL モード | 『セキュリティーガイド』を参照。 |
| Declare/Fetch カーソルおよび Fetch Max Count の使用 | 大規模な結果セットが使用される場合にリソースを効率よく管理するために使用する必要があります。 |
ログ/デバッグ設定を必要に応じて使用できます。
「Show SystemTables」、「True is -1」、「Backend genetic optimizer」、「Bytea as LongVarBinary」、「Bools as Char」などのデータタイプ、メタデータ、または最適化を操作する設定は Teiid サーバーによって無視され、クライアントへの影響はありません。これら、または影響を定義するための設定が必要な場合は、製品/プロジェクトに関連するケースとして報告してください。
必要な場合は「LFto CR/LF conversion」などのクライアント側に影響を与える他の設定を使用できますが、現時点ではこの設定をサーバー側で使用することはできません。
10.5.2. Red Hat Enterprise Linux での ODBC オプションの設定
手順10.6 Red Hat Enterprise Linux での ODBC オプションの設定
yum install unixODBCコマンドを実行し、ドライバーマネージャーをインストールします。odbcinst -q -dコマンドを実行し、PostGreSQLdriver が正しくインストールされたことを確認します。- DSN を作成するには、
sudo vi /opt/redhat/odbc.iniを実行して、テキストエディターで設定ファイルを開きます。注記
このファイルを開くには、sudo を使用するか root でログインしている必要があります。 - 以下の設定をファイルに追加します。
[<DSN name>] Driver = /usr/lib/psqlodbc.so Description = PostgreSQL Data Source Servername = <Teiid Host name or ip> Port = 35432 Protocol = 7.4 UserName = <user-name> Password = <password> Database = <vdb-name> ReadOnly = no ServerType = Postgres ConnSettings = UseServerSidePrepare=1 ByteaAsLongVarBinary=1 Optimizer=0 Ksqo=0 Trace = No TraceFile = /var/log/trace.log Debug = No DebugFile = /var/log/debug.log
- ファイルを保存して、テキストエディターを終了します。
- 以下のコマンドを実行して DSN をテストします。
isql <DSN-name> [<user-name> <password>] < commands.sql
注記
DSN を使用せずに接続するには、以下の DSN を使用しない接続文字列を使用します。ODBC;DRIVER={PostgreSQL};DATABASE=<vdb-name>;SERVER=<host-name>;PORT=<port>;Uid=<username>;Pwd=<password>注記
isql を実行した後にエラーが発生して「Can't open lib '/opt/redhat/jboss-dv/v6/psqlodbc/lib64/psqlodbc.so' : file not found」というメッセージが表示される場合、それは一部の postgres ライブラリーがないことを意味します。この問題を解決するには、root でyum install postgresコマンドを実行します。パッケージがインストールされていることを確認するには、rpm -qa|grep postコマンドを実行します。postgresql と postgresql-jdbc パッケージが一覧表示されるはずです。