JavaプログラムからMS SQL Server(私のマシンで実行中)に接続しようとしています。次のような長い例外が発生しています。
Exception in thread "main" com.Microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the Host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".
MS SQLのオブジェクトエクスプローラーで[プロパティ]をチェックして[接続プロパティの表示]をクリックすると、「サーバーが使用できません」とわかります。これは、例外メッセージに関連している可能性があります。
サーバーを利用可能にするにはどうすればよいですか?
編集:
SQL Server 2008を使用していますが、TCP/IPを有効にして、インスタンスを再起動しました。 「サーバーは利用できません」と言われます。
他のアイデアはありますか?
私もこの問題に遭遇しました。 MSKBの記事は、SQL Server 2005に適用されます。
「SQL Server Surface Area Configuration」ツールが「Facets」の代わりに削除されたため、これは私には明らかではありませんでした。
TCPAllポートを設定し、関連するIPを有効にすることでこれを解決しました。
SQL Server構成マネージャーを開きます(スタート->プログラム-> Microsoft SQL Server 2008->構成ツール)
[SQL Serverネットワーク構成]-> [サーバーインスタンス]を展開します
TCP/IPをダブルクリックします
Protocolの下:
EnabledがYesであることを確認してください
IPアドレスの下:
一番下までスクロールして、TCP Port、(デフォルトでは1433)を設定します)
接続するIPアドレスを見つけて設定しますEnabledおよびActive toはい
接続をいじる前に、最初にSQL Serverサービスが実際に実行されていることを確認してください。
これを行うには、SQL Server構成マネージャー(構成ツールフォルダーにあります)を使用するか、Windowsコントロールパネルの標準サービスコンソールを使用します。
サービスが稼働していることを確認したら、SQL Serverがリモート接続を許可するように構成されていることを確認する必要があります。
これを行う方法の説明については、以下を参照してください。
SQL Server 2012を使用していますが、同じ問題があります。
TCP/IPをアクティブにするとき、2つのオプションがあることに注意してください。
Active - YES
-これで[はい]をクリックしただけでは機能しませんEnabled
-これも[はい]をクリックします。私はこれに注意を払わず、なぜ機能していないのか疑問に思っていましたが、その過程で多くの時間を無駄にしましたこれでリスニングポートをテストできます:
netstat -an
通常どおり、次のことを確認します。1.ルーターのポート1433および1434が有効になっているかどうかを確認します(これらはIP/UDP通信のデフォルトです)。2.クライアントまたはサーバーのいずれかにファイアウォールがある場合は、ポートがブロックされていないと述べました(これが私の「落とし穴」でした)。 3. Sql Configuration Managerに移動し、Sql Server Network Configurationで、TCP/IPが有効になっていることを確認します。また、SQL Native Client 1.0(インストールされている場合)の下の同じプログラムでは、TCP/IPも有効になっています。
すべての接続情報が機能していることを確認するための安価で滑らかな方法は、.udlファイル(システムの任意の場所)を作成し、適切な情報を入力して[接続のテスト]をクリックすることです。そこに何か問題がある場合は、問題に関して(かなり)有益なメッセージを受け取ります。 .udlファイルについて知らない場合は、Windowsエクスプローラー(右側のペイン)で右クリックして、「新しいテキストファイル」を作成します。受け入れ可能な名前を入力しますが、拡張子を.txtから.udlに変更します。拡張機能の変更を確認するよう求められます。yesと答えます。作成したら、ファイルをクリック(または、シングルクリックを使用しない場合はダブルクリック)して開きます。 4つのタブがあります。最初の方法では、プロバイダーを選択できます。 Visual StudioではSql Nativeクライアントを使用し、他のプログラムでは標準のSql Server Providerを試してください。 2番目のタブでは、サーバー名、SQLサーバーのユーザー名とパスワード(使用する場合)などを入力できます。次に、接続をテストします。注意すべきもう1つの項目-Windows認証を使用している場合は、それらのユーザーがサーバーログインに追加されていることを確認してください。
使用しているSQL Serverのバージョンによっては、デフォルトで名前付きパイプのみを使用するように設定される場合があります。
サーバーへのTCP/IP接続を有効にする必要があります。使用しているSQL Serverのバージョンを教えていただければ、TCP/IPを有効にする方法について、より正確な手順を説明できます。
SQL Server構成マネージャーを開きます。 ([スタート] | [プログラム] | [SQL Serverのバージョン] | [構成ツール])
「SQL Serverサービス」を参照して、インスタンスを再起動します。ただし、インスタンスを右クリックして[再起動]を選択すると、Management Studioでこれを実行できます。
再起動に失敗した場合は、コンピューターの管理|イベントビューアー|アプリケーションとSQLサーバーイベントを探します。ここに成功およびエラーメッセージが記録されます。
接続がファイアウォールによってブロックされているかどうかを確認します。サードパーティのファイアウォールがアクティブな場合、TCP接続をブロックする可能性があります。このステップの後、
1。チェックTCP有効または無効
a。 SQL Server構成マネージャーを開く
b。 SQL Serverネットワーク構成
c。 MSSQLSERVERのプロトコル
d。 TCP –有効にする
e。また、すべてを聞く-はい
f。 [IPアドレス]タブで、IPAll-ポート番号は1433である必要があります
これが私のスクリーンショットです。言葉が読めない場合は、画像をダウンロードするか、画像をコピーしてペイントに貼り付けます。
内部Glassfish:
「一般」タブ:
「追加プロパティ」タブ
URL = jdbc:sqlserver:// localhost; databaseName = NETEAV
Microsoft SQL Server Management Studio内:
まず、SQL Serverサービスが実行されていることを確認します。 SQL 2005または2008を使用している場合、構成マネージャー(2008)またはSurfaceは構成ツール(2005)をチェックして、TCP/IPプロトコルが有効になっており、TCP/IP接続が許可されていることを確認します。 SSE(express)では、これらはデフォルトでオフになっているため、問題が発生します。また、複数のインスタンスを実行している場合に備えて、SQLブラウザーサービスの実行が必要になる場合があります。この場合、ローカル/共有メモリ接続を使用するため、サーバーアドレスとして(ローカル)を使用してオブジェクトエクスプローラーに接続できる必要があります。
2005年以降、SQLサーバーブラウザーサービスが実行されています。
その人は何度も私をだましました。
SQL Server 2014への接続中に同じエラーが発生しました。
SQLサーバーにログインして、正しいポート番号が設定されていることを確認しました。
私の場合、ポート番号はsqlインスタンスに設定されていません。
したがって、接続文字列urlからポート番号を削除し、接続できました。
この問題に直面している人は誰でもこの方法で試すことができます