2006年06月16日

DB2 Viper から IDS10 につないでみました。

IBM DB2 Viper のオープンベータをダウンロードしてみました。せっかくなので Informix Dynamic Server と接続(IDS のデータベースを、DB2 のデータベースであるかのうようにアクセスする)してみました。

まだ必須の環境変数など良くわかっていませんが、とりあえず現在までのメモです。

1. 環境変数の設定

DB2 UDB のサーバープロセスがInformix Connectを使って Informix サーバーに接続する。ゆえに、INFORMIXDIR などの設定必須環境変数は、DB2 UDBのサーバーの環境として設定する必要がある。

方法: db2dj.ini に記述しておく。

INFORMIXDIR
INFORMIXSERVER
INFORMIXSQLHOSTS ( Option )
CLIENT_LOCALE ( ほぼ必須 )
DB_LOCALE ( ほぼ必須 )
DBNLS ( Option )

このほか、INFORMIX_CLIENT_DB_LOCALE などという名前の環境変数が用意されているみたいなんですが、違いが良くわかりません。

2. ユーザー名やパスワードの送信について

ALTER SERVER TYPE INFORMIX OPTIONS ( ADD FOLD_ID 'L );
DB2 から Informix サーバーに接続する時に、ユーザー ID を小文字として送信する。

ALTER SERVER TYPE INFORMIX OPTIONS ( ADD FOLD_PW 'N );
DB2 から Informix サーバーに接続する時に、ユーザー ID を大文字小文字の変換をせずそのまま送信する。

3. 設定例(ここに書いた拡張SQLを、DB2 のSQL実行環境から実行する..事前にDB2 のインスタンスにつないでから。 )

CREATE WRAPPER INFORMIX LIBRARY 'libdb2informix.so' ( Solaris, Linux 環境での例 )

CREATE SERVER servername TYPE INFORMIX VERSION 10 WRAPPER INFORMIX \
OPTIONS ( NODE 'ifx_dbservername', DBNAME 'ifx_dbname' );

CREATE USER MAPPING FOR db2user1 SERVER servername \
OPTIONS ( REMOTE_AUTHID 'ifxuser1', REMOTE_PASSWORD 'ifxpassword' );

CREATE NICKNAME informix_name FOR servername."ifxuser1"."ifxtable"

4. 設定がうまく出来ていることの確認方法例(つないで検索してみる)

SET PASSTHRU servername
SELECT count(*) FROM informix.systables
SET PASSTHRU RESET


5. トラシュー

- UTF8ロケールで作成した IDS DB に接続しようとすると -23101 が発生

db2dj.ini などで、CLIENT_LOCALE, DB_LOCALE を正しく設定しているのに発生。 このエラーは、GLS LOCALE ( CLIENT_LOCALE, DB_LOCALE で指定されたもの ) をロードしようとしたら、システムにそのロケールのためのファイルが入っていない、という場合に発生する。

--> Informix Connect が入っている INFORMIXDIR に、指定のロケールが入っているか確認
特に Windows では、環境変数 INFORMIXDIR と SETNET32(レジストリ ) で設定した INFORMIXDIR の双方を確認。

--> Informix 製品には、UTF-8 対応のロケールは標準では含まれていない。Informix 製品に同梱の、International Language Supplement CDを使って、UTF-8 対応ロケールをインストールしましょうね。

- CLIENT_LOCALE は何に設定すれば良いのかな?(まだ答えが出ていません。)
WRAPPER を作成する、DB2 側のデータベースのコードセットと同等にすればよいのかな?

DB2 でデータベースを作成したときのコードセット:CLIENT_LOCALE
IBM-943: ja_jp.sjis-s
UTF8: ja_jp.utf8

って感じかな?


タグ :ids10db2

同じカテゴリー(他製品との接続)の記事
DB2からInformixへ....
DB2からInformixへ....(2012-03-15 00:28)


※このブログではブログの持ち主が承認した後、コメントが反映される設定です。
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。