データベース・サーバーへのローカル・アクセスとリモート・アクセスの両方をサポートするには、ccmsrv create コマンドで、$CCM_HOME/informix/etc/sqlhosts ファイル内に以下の 2 つのデータベース・サーバー項目を作成します。
dbservername nettype hostname dbservername
dbservername_net nettype hostname servicename
最初のタイプの項目はローカル接続 (例えば、同じコンピューター内のエンジンとデータベース・サーバーのローカル接続) 用です。2 番目のタイプの項目は、TCP/IP を使用したソケットによるリモート (_net) 接続用です。例えば、この項目は、リモート・コンピューター上にあるエンジンへのネットワーク接続用です。
例えば、以下のように、marathon は、共有メモリー・プロトコル (onipcshm) を使用して marathon として接続され、Solaris TCP プロトコル (ontlitcp) を使用して marathon_net として接続されます。
marathon onipcshm marathon marathon
marathon_net ontlitcp marathon marathon_marathon
4 番目の列には、ローカル接続の場合はデータベース・サーバー名が含まれ、ネットワーク接続の場合はサービス名 (services ファイルで定義) が含まれます。
プラットフォーム | ローカル | リモート (ソケット) |
---|---|---|
Solaris | onipcshm | ontlitcp |
AIX | onipcshm | onsoctcp |
Linux | onipcshm | onsoctcp |
AIX および Linux の場合は、異機種の UNIX インストール済み環境で $CCM_HOME/informix/etc ディレクトリーの単一コピーを共有できます。そのため、$CCM_HOME/informix/etc/sqlhosts ファイルの単一コピーが必要になります。ccmsrv create によって sqlhosts に追加された項目は、すべての UNIX プラットフォームから可視になります。
$CCM_HOME/informix/etc ディレクトリーをリンクしなかった場合は、1 つのプラットフォームでサーバーを作成した後に、そのプラットフォームの sqlhosts ファイルの項目をその他のプラットフォームの sqlhosts ファイルにコピーする必要があります。
Solaris では、Informix でサポートされるネットワーク・プロトコルは、HP、AIX、または Linux の各プラットフォームのものとは異なります。Solaris の sqlhosts ファイルは異なるものにする必要があります。サーバーを作成した後に、そのサーバーに他のプラットフォームからアクセスできるようにする場合は、sqlhosts ファイルに項目を手動で追加する必要があります。
例えば、moby という HP コンピューターでサーバーを作成した後に、HP 上の sqlhosts ファイルに以下の 2 つの項目があるとします。
mobysrv onipcshm moby mobysrv
mobysrv_net onsoctcp moby mobysrv_moby
(sqlhosts ファイルを共有できない) Solaris プラットフォームからこのサーバーにアクセスするには、以下のような項目を Solaris の sqlhosts ファイルに追加する必要があります。
mobysrv_net ontlitcp moby mobysrv_moby
同様に、stellar という Solaris コンピューターでサーバーを作成した後に、Solaris の sqlhosts ファイルに以下の 2 つの項目があるとします。
stellarsrv onipcshm stellar stellarsrv
stellarsrv_net ontlitcp stellar stellarsrv_stellar
HP-UX、AIX、または Linux の各システムから stellarsrv サーバーにアクセスするには、これらの各プラットフォームの sqlhosts ファイルに以下の行をコピーする必要があります。
stellarsrv_net onsoctcp stellar stellarsrv_stellar