接続性のトラブルシューティング
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 のインスタンスをインストールまたは構成するときに、このオプションが選択されていることを確認します。