web-dev-qa-db-ja.com

VM)の外部でSQL Server 2012Expressインスタンスに接続できません

Sql Server Management Studioを使用して、VMからホストマシンにあるSqlServerインスタンスに接続しようとしています。

ホストからSSMSを使用して両方のSQLインスタンスに接続できますが、VMからホストインスタンスに接続しようとすると、SMSSは次のエラーメッセージを表示します(私のものはPT-BRにあります)。

enter image description here

私の環境は次のようになります。青い点線のブロックは私のホスト(PC_MASTER)を表し、オレンジ色の点線のブロックは私のVM(MYVM):

enter image description here

各マシンの主なコンポーネントは次のとおりです。

PC-MASTER(ホスト): Windows 8PRO-英語(SQL Server 2012 Express付き)。 SQLインスタンス名は "PC-MASTER\SQLEXPRESS"です。

MyVM(VM): Windows Server 2012BR-ポルトガル語とSQLServer2012標準。 SQLインスタンス名は "[〜#〜] myvm [〜#〜]"です。

ファイアウォール:ホストには、1433/1434を開くインバウンドルールがありますTCPすべてのプログラム/サービスのポート;

SQLプロトコル:両方のサーバーで、3つの主要なプロトコルすべてが、次の順序でオンになっています。共有メモリ、TCP/IP、名前付きパイプ。

リモートアクセス:両方のSQLサーバーはリモート接続を許可するように構成されています。

SQL構成:ホストSQLは、Somantraが指摘したように、ポート1433を介した静的アクセスのみを許可するように構成されています。

私のVM(MYVM)から:

  • ローカルSQLインスタンスにのみ接続できます。
  • IPまたは名前のいずれかを使用してホストに正常にpingを実行できます。
  • Telnetを使用してホストに接続できません。ポート21、23、80、1433、および1434を試しました。

Tks!

3
tcbrazil

だから私はこの問題のすべての重複を見て数分を費やしました、そして いくつかあります 、しかし正直に言うと、彼らは答えの点ですべての種類を吸い込んだので、ここに行きます:

ポート1433は、SQLServerのデフォルトインスタンスにのみ適しています。名前付きインスタンスに接続する場合は、次の2つのオプションがあります。

  1. 使用する SERVER\INSTANCE名前と開いているポート1434(SQLブラウザの場合)およびSQL Serverインスタンスのポート(詳細は後で説明します)
  2. 使用する SERVER:portここで、portはSQLServerインスタンスのポートです

SQL Server ConfigurationManagerの[ネットワーク構成]> [TCP/IP]> [IPアドレス]で、SQLServerインスタンスが実行されているポートを確認するには:

enter image description here

したがって、#1の場合は1434と64670を開く必要があり、#2の場合は64670を開く必要がありますが、別のSQL接続文字列を使用します。

5
Mark Henderson