TCP/IP エラー

ソフトウェアは、TCP/IP 固有の通信エラーが検出されると、SQL30081N メッセージ (-30081) を戻します。 通信サブシステムによって検出された TCP/IP エラーは、SQL30081N メッセージのエラー・トークン・リストで戻されます。

TCP/IP

以下の表に、 Linux®、UNIX、および Windows オペレーティング・システム上の一般的な TCP/IP エラー記号 (errnos) をリストします。 UNIX オペレーティング・システムの TCP/IP エラーの完全なリストは、 /usr/include/sys/errno.h ファイルにあります。 Linux オペレーティング・システムの場合、TCP/IP エラーの完全なリストは /usr/include/asm/errno.h ファイルにあります。 Windows オペレーティング・システムの場合は、「 Windows Sockets エラー・コード」を参照してください。

表 1. TCP/IP エラー番号
エラー・コード AIX® エラー番号 Linux エラー番号 Windows エラー番号 内容
EINTR 4 4   指定された関数がシグナルにより割り込みを受けました。
EBADF 9 9   ソケットが不正です。 ソケットは破損している可能性があります。
EAGAIN 11 11   一時的にリソースは利用不能です。
EFAULT 14 14   アドレスが不正です。

接続時に、アドレスが不正です。

受信時に、存在しない処理アドレス・スペースで、または処理アドレス・スペースの保護されている部分でデータを受信するように指示されました。 バッファーが無効です。

EBUSY 16 16   リソースは使用中です。
EINVAL 22 22   指定された関数に渡された引数が無効です。またはソケットが閉じられています。 EINVAL エラーは、メモリーの上書きやバッファー・オーバーフローの問題があった場合に戻される可能性があります。
ENFILE 23 23   システムで開いているファイルが多すぎます。
EMFILE 24 24   プロセスごとのファイル記述子表はいっぱいです。 このプロセスのファイル記述子またはソケットの数を超過しました。
ENOSPC 28 28   デバイスまたはシステム表にスペースが残っていません。
EPIPE 32 32   パイプ接続が切れています。
EWOULDBLOCK 54 11   接続機能において、TCP/UDP 一時ポートに割り振られる範囲がすべて使用されています。 (一部のオペレーティング・システム は、EAGAIN と同じエラーを戻します。)
ENOTSOCK 57 88   非ソケットでソケット操作が実行されました。
ENOPROTOOPT 61 92   オプションが不明です。
EADDRINUSE 67 98 10048 指定されたアドレスは既に使用中です。 接続を確立した以前の処理が異常終了したか、正しくクリーンアップされなかった可能性があります。
EADDRNOTAVAIL 68 99   指定されたホスト名または IP アドレスはローカル・システムから使用できません。
ENETDOWN 69 100   ネットワークはダウンしています。
ENETUNREACH 70 101   使用できるネットワークまたはホストへの経路がありません。
ENETRESET 71 102   ネットワークによってリセット時に接続がドロップされました。
ECONNRESET 73 104 10054 パートナーによって接続がリセットされました。
ENOBUFS 74 105 10055 呼び出しを完了するためにシステムで使用できるメモリーまたはリソースが不足しています。
EISCONN 75 106   ソケットはすでに接続されています。
ENOTCONN 76 107   ソケットが接続されていません。
ETIMEDOUT 78 110 10060 接続はタイムアウトになりました。
ECONNREFUSED 79 111 10061 接続は拒否されました。 データベースへの接続を試みている場合には、サーバーのデータベース・マネージャーおよび TCP/IP プロトコル・サポートが正常に開始されたことを確認してください。

SOCKS プロトコルのサポートを指定した場合は、SOCKS サーバーにおける TCP/IP プロトコルのサポートが正常に開始されたことを確認する必要もあります。

EHOSTDOWN 80 112   ホストがダウンしています。
EHOSTUNREACH 81 113   ホストへの経路は存在しません。
SOCECONNABORTED 72   10053

ソフトウェアが接続をクローズしました。

ODBC/CLI を使用して DB2 UDB サーバーに接続するクライアント・アプリケーションについてエラーが報告された場合、以下のようにして Db2 CLI タイムアウトを無効化してください。
  1. 追加
    QUERYTIMEOUTINTERVAL=0
    クライアント・サイドの db2cli.ini ファイルに追加します。
  2. アプリケーションにタイムアウトがあるかどうか確認します。 例えば、ADO タイムアウト、VB タイムアウトなどです
  3. アプリケーションが OS390 サーバーに接続する場合は、idlethreadtimeout パラメーター (IDTHTOIN) の値を確認します。
    注: idlethreadtimeout パラメーターは、 OS390 サーバーでのアクティブ・スレッド・タイムアウト制限を設定します。
WSAEINTR     10004 クライアントにより接続がクローズされました。 Db2 z Systems の場合は、技術情報 SQL30081n を参照してください。
WSAEHOSTUNREACH 81 113 10065 ホストへの経路がありません

Linux サーバーに接続しようとする Windows クライアントの場合、 Linux サーバー上のファイアウォールを設定解除して、クライアントからの接続を許可します。

注: Windows オペレーティング・システムでの TCP/IP エラーの完全なリストは、 winsock2.h ファイルにあります。 winsock2.h ファイルは、開発環境をインストールしていないシステムにはインストールされていません。