自宅のサーバーに SQL Server Express 2012 をインストールしました。デスクトップ PC の Visual Studio 2012 から接続しようとすると、よく知られているエラーが繰り返し発生します。
SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 40 - SQL Server への接続を開けませんでした)
これを修正するために私がやったこと:
- サーバー上でSQL Server構成マネージャーを実行し、SQL Server Browserを有効にします。
- ローカル サブネット上の TCP ポート 1433 および 1434 に対して、サーバーに Windows ファイアウォール例外を追加します。
- デスクトップにログインしているユーザーの SQL Server インスタンスへのログインがあることを確認します。
- SQL Server インスタンスで Windows 認証を使用していることを確認します。
- SQL Server とサーバー全体を繰り返し再起動します。
- 髪の毛を全部抜いてください。
SQL Server 2012 Express でリモート接続を許可するにはどうすればいいですか?
ベストアンサー1
良い、聞いてよかった私が最終的に見つけた解決策はここにありました:
ポート 1433 でリモート TCP/IP 接続を許可するように SQL Server Express を構成するにはどうすればよいですか?
- SQL Server 構成マネージャーを実行します。
- SQL Server ネットワーク構成 > SQLEXPRESS のプロトコルに移動します。
- TCP/IP が有効になっていることを確認してください。
ここまでは順調で、まったく予想通りでした。しかし、その後:
- TCP/IP を右クリックし、[プロパティ]を選択します。
- IP2 で、IP アドレスがローカル サブネット上のコンピューターの IP アドレスに設定されていることを確認します。
- IPAllまでスクロールします。
- TCP 動的ポートが空白であることを確認します。(私の場合は 5 桁のポート番号に設定されていました。)
- TCP ポートが1433に設定されていることを確認します。(私の場合は空白でした。)
(また、これらの手順に従う場合、 SQL Server Browser を有効にする必要はなく、ポート 1434 ではなくポート 1433 のみを許可する必要があります。)
これらの追加の 5 つの手順は、以前のバージョンの SQL Server、Express などでは実行する必要がなかったことを思い出せません。サーバー上で既定のインスタンスではなく名前付きインスタンス (myservername\SQLEXPRESS) を使用しているため、必要だったようです。こちらを参照してください。