SQL Server での PortQryUI ツールの使用
PortQry は、TCP/IP 接続の問題のトラブルシューティングに使用できるコマンドライン ツールです。 このツールは、ローカル コンピューターまたはリモート コンピューター上のターゲット TCP およびユーザー データグラム プロトコル (UDP) ポートの状態を報告します。 PortQryUI.exe を使用すると、PortQry のコマンド ラインではなく UI を使用できます。
この記事では、Microsoft SQL Server に影響する接続の問題をトラブルシューティングするときに PortQryUI ツールを使用する方法について説明します。 PortQry コマンド ライン ツールの詳細については、「 PortQry コマンド ライン ツールの使用を参照してください。
Note
PortQryUI はトラブルシューティング ツールとして使用することを目的としているため、ツールを効果的に使用するには、コンピューティング環境に関する十分な知識が必要です。
PortQryUI ツールについて
PortQryUI ツールは、次のタスクを実行するのに役立ちます。
- TCP/IP 接続の問題を解決します。
- ローカル コンピューターまたはリモート コンピューター上の TCP ポートと UDP ポートの状態を表示します。
- SQL Server に影響を与えるさまざまな接続の問題のトラブルシューティングを行います。
PortQryUI ツールは、Microsoft ダウンロード センターからダウンロードできます。
PortQryUI - PortQry コマンド ライン ポート スキャナーのユーザー インターフェイス
PortQryUI ツールの使用
コンピューターまたはリモート コンピューターの接続の問題を解決するには、次の手順に従います。
クライアント コンピューター PortQryUI を起動します (接続の問題が発生しています)。
クエリを実行する宛先 IP または FQDN の入力ボックスでポートの状態を確認するコンピューターの IP アドレスまたは FQDN 名を指定します。
Query 定義済みサービスを選択し、 SQL サービスを選択します。 コンピューター上のポートは、使用するサービスの種類によってグループ化されます。 サービスの種類でクエリを実行できます。 定義済みのサービスは次のとおりです。
- ドメインと信頼
- DNS クエリ
- NetBIOS 通信
- IPSEC
- SQL サービス
- WEB サービス
- Exchange Server
- Netmeeting とその他のサービス
情報を指定した後、 Query を選択し、出力を確認します。 PortQryUI ツールで表示される出力をデコードする方法の詳細については、「sql Server 接続の問題の原因と推奨される回避策」セクションのPossible の原因を参照してください。
Note
SQL Server ベースのコンピューターへの管理者アクセス権がある場合は、そのコンピューターで SQL 接続設定チェック ツールをダウンロードして実行し、次のセクションと組み合わせて出力を確認できます。
SQL Server の接続に関する問題と推奨される回避策の考えられる原因
インスタンスの種類: 既定のインスタンス
PortQry からの出力: TCP port 1433 (ms-sql-s service): NOT LISTENING
考えられる原因: この問題には、次のいずれかの原因が考えられます。
- SQL Server が起動していません。
- SQL Server プロトコルの一覧で TCP/IP が有効になっていません。
- SQL Server が既定以外のポートでリッスンしています (エラー ログの確認)。
- クライアントとサーバーの間のファイアウォールがポートをブロックしています。
推奨される回避策: 次の回避策を試してください。
- SQL Server が起動していることを確認します。
- SQL Server ネットワーク構成で、サーバー インスタンスに対して TCP/IP が有効になっていることを確認します。
- SQL Server エラー ログでポート番号を確認します。 servername\portnumber形式で接続文字列で使用します。
- ネットワークまたは Windows 管理者に問い合わせて、TCP ポート 1433 (または現在構成されている SQL Server ポート) が、ネットワーク上のファイアウォールまたは SQL Server システム上の Windows ファイアウォールによってブロックされていないことを確認してください。 SQL Server インスタンスと連携するように Windows ファイアウォールを構成するには、「Windows ファイアウォールの構成 確認。
インスタンスの種類: 既定のインスタンス
PortQry からの出力: TCP port 1433 (ms-sql-s service): LISTENING
考えられる原因: この問題は、クライアント ライブラリが SQL Server ベースのコンピューターに接続できるが、アプリケーション 層内の他の何かが問題を引き起こしている可能性があることを示しています。
推奨される回避策: 次の回避策を試してください。
- 接続文字列でサーバー名が正しく指定されているかどうかを確認します。 接続文字列がポート番号を使用している場合は、正しく指定されていることを確認します。
- 接続文字列がポート番号を使用している場合は、正しい値に設定されていることを確認します。 クライアント コンピューターで古いエイリアスが定義されていないことを確認します。
- SQL Server 構成マネージャーまたはクライアント システムの SQL Server クライアント ネットワーク ユーティリティ (Cliconfg.exe) の Alias タブで、SQL Server インスタンスにエイリアスが存在することを確認します。
インスタンスの種類: 名前付きインスタンス
PortQry からの出力: UDP port 1434 (ms-sql-m service): FILTERED
考えられる原因: この問題には、次のいずれかの原因が考えられます。
- SQL Server の名前付きインスタンスが開始されていません。
- SQL Server インスタンスをホストしているシステムで SQL Server ブラウザーが起動していません。
- UDP ポート 1434 は、SQL Server ベースのコンピューター上のファイアウォール、またはクライアントとサーバーの間のネットワーク内のファイアウォールによってブロックされます。
- サービスが開始されます。
推奨される回避策: 次の回避策を試してください。
- SQL Server の名前付きインスタンスを起動します。
- SQL Server ブラウザー サービスを開始してみてください。
- ネットワークまたは Windows 管理者と協力して、UDP ポート 1434 がネットワーク上のファイアウォールまたは SQL Server システム上の Windows ファイアウォールによってブロックされていないことを確認します。 SQL Server と連携するように Windows ファイアウォールを構成するには、「Windows ファイアウォールの構成」を参照してください。
- ファイアウォールで UDP 1434 を開くことができない場合は、静的ポートでリッスンするように SQL Server 名前付きインスタンスを構成し、接続文字列で servername\portnumber を使用する必要があります。
インスタンスの種類: 名前付きインスタンス
PortQry からの出力: UDP port 1434 is LISTENING
考えられる原因: この問題は、クライアント ライブラリが SQL Server ベースのコンピューターに接続できることを示しています。 ただし、アプリケーション 層内の他の何かが問題の原因である可能性があります。
推奨される回避策: 次の回避策を試してください。
- 接続文字列でサーバー名とポート番号が正しく指定されていることを確認します。
- クライアント コンピューターで古いエイリアスが定義されていないことを確認します。 クライアント システムの SQL Server クライアント ネットワーク ユーティリティ (Cliconfg.exe) の SQL Server 構成マネージャー または Alias タブで、SQL Server インスタンスにエイリアスが存在することを確認します。
PortQryUI ツールを使用する場合、接続の問題にはさまざまなシナリオが存在する可能性があります。 次の各スクリーンショットでは、インスタンスの種類と接続が成功したかどうかに基づいて出力が表示されます。 接続が正しく行われると、値 "Listening" が表示されます。 接続が発生しない場合は、値 "Filtered" が表示されます。
次の出力は、接続が成功した既定のポートの既定のインスタンスからの出力です。
既定のポートの既定のインスタンスの接続が失敗した場合は、次のスクリーンショットに示すように出力が表示されます。
名前付きインスタンスの接続が成功した場合 (たとえば、インスタンス名が "SQL 2014" で、ホスト名が "SQLCONNVM" の場合)、次のスクリーンショットに示すように出力が表示されます。
名前付きインスタンスの接続に失敗した場合は、次のスクリーンショットに示すように出力が表示されます。