web-dev-qa-db-ja.com

SQL Server Expressはエラーを接続できません:28-サーバーは要求されたプロトコルをサポートしていません

サーバー(Windows 2008 R2)からローカルのSQL Server Express(2012、ただしバージョンは問題ではありません)に接続してツールを使用できません(疑問がある場合はAPEX SQL Data Diff)。ネットワークサーバーを正常に参照し、使用可能なサーバーのドロップダウンからローカルインスタンスを選択できますが、サーバー上のテーブルを検索すると、このエラーメッセージでタイムアウトします(SSMSについても同じです)。

SQL Serverへの接続の確立中にネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからなかったか、アクセスできませんでした。インスタンス名が正しいこと、およびSQL Serverがリモート接続を許可するように構成されていることを確認してください。 (プロバイダー:SQLネットワークインターフェイス、エラー:28-サーバーは強力なテキスト要求プロトコルをサポートしていません)(Microsoft SQL Server、エラー:-1)

ファイアウォールを有効にしました-そうではありません。

リモート接続を許可しました-そうではありません。

SQL Server Browserサービスがオンになっており、ファイアウォールを通過しています-それは違います。

同じツールで問題なく接続できます[〜#〜] to [〜#〜]しかし、- [〜#〜] from [〜#〜]失敗したサーバー。

何か案は?

54
Watki02

この記事 のおかげで、エラーメッセージが表示されました。問題は、SQL Server Expressで必要なネットワークプロトコルがデフォルトで無効になっていることです。 Sql Server Configuration Managerにローカルでアクセスし、「名前付きパイプ」と「TCP/IP」をオンにする必要がありました。その後、SQL Server BrowserおよびSQL Server(instance)サービスを再起動する必要があります。

SQL Server Config manager

必要はありませんでしたが、「プロトコル」の下の「SQL Serverネットワーク構成」で調整が必要な設定を確認する必要があります。

これが他の人の助けになることを願っています!

110
Watki02

SQL構成マネージャー:

SQL Configuration Manager

画像のリンクパネルで選択したグループが間違っています。SQLServerネットワーク構成→SQLEXPRESSのプロトコルである必要があります。

12
Teo

"SQL Server Network Configuration"-> YourInstanceのプロトコルも確認することを忘れないでください。私は骨頭だったので、そこを見ることも忘れていました。

9
Mike