接続性のトラブルシューティング

JDBC ドライバーのダウンロード

SQL Server 用 Microsoft JDBC ドライバー では、SQL Server データベースと通信を行うため、TCP/IP がインストールされて動作している必要があります。 SQL Server 構成マネージャーを使用すると、インストールされているネットワーク ライブラリのプロトコルを確認できます。

データベース接続は、さまざまな原因により失敗する場合があります。 次のようなものがあります。

  • TCP/IP が SQL Server で有効になっていません、または指定されたサーバーやポート番号が間違っています。 指定されたサーバーとポート上の TCP/IP で SQL Server が待機していることを確認します。 このようなエラーは、次のような例外で報告されることがあります。"ログインに失敗しました。 ホストに TCP/IP 接続できませんでした。"これは、次のいずれかを示します。

    • SQL Server はインストールされていますが、TCP/IP が SQL Server 用のネットワーク プロトコルとして、SQL Server 2000 (8.x) の SQL Server ネットワーク ユーティリティ、または SQL Server 2005 (9.x) 以降の SQL Server 構成マネージャーを使用して、インストールされていません。

    • TCP/IP は SQL Server プロトコルとしてインストールされていますが、JDBC 接続 URL で指定されたポートでリッスンしていません。 既定のポートは 1433 ですが、製品のインストール時に任意のポートで待機するように SQL Server を構成することができます。 SQL Server がポート 1433 でリッスンしていることを確認します。 または、ポートが変更されている場合は、JDBC 接続 URL で指定するポートを、変更されたポートと一致させます。 JDBC 接続 URL の詳細については、「接続 URL の構築」を参照してください。

    • JDBC 接続 URL で指定されたコンピューターのアドレスが、SQL Server がインストールおよび起動されたサーバーを参照していません。

    • クライアントと、SQL Server を実行しているサーバーとの間で、TCP/IP のネットワークが動作していません。 telnet を使用して、SQL Server への TCP/IP 接続を確認できます。 たとえば、コマンド プロンプトに「telnet 192.168.0.0 1433」と入力します。192.168.0.0 は SQL Server を実行しているコンピューターのアドレス、1433 はリッスンしているポートを示します。 "Telnet が接続できません" というメッセージを受け取る場合、TCP/IP はそのポートで SQL Server 接続をリッスンしていません。 SQL Server 2000 (8.x) の SQL Server ネットワーク ユーティリティ、または SQL Server 2005 (9.x) 以降の SQL Server 構成マネージャーを使用して、SQL Server がポート 1433 で TCP/IP を使用するように構成されていることを確認します。

    • サーバーで使用されるポートがファイアウォールで開かれていない。 これには、サーバーが使用するポート、またはオプションで、サーバーの名前付きインスタンスに関連付けられたポートが含まれます。

  • 指定されたデータベース名が間違っている。 実際に存在する SQL Server データベースにログオンしていることを確認します。

  • ユーザー名またはパスワードが間違っている。 値が正しいことを確認します。

  • SQL Server 認証を使用する場合、JDBC ドライバーでは、SQL Server が既定ではない SQL Server 認証でインストールされている必要があります。 SQL Server のインスタンスをインストールまたは構成するときに、このオプションが選択されていることを確認します。

関連項目

JDBC ドライバーに関する問題の診断
JDBC ドライバーによる SQL Server への接続