web-dev-qa-db-ja.com

リモート接続を許可するためのSQL Server 2016の構成

Windows Server 2016 CoreにSQL Server 2016がインストールされています。ローカルで、それは働いているようです。 SQLCMD.exeを使用して接続し、いくつかの基本的な選択を行うことができます。

リモートから接続できません。リモートマシンでのSQLCMD.exeの使用:

sqlcmd -S boldiq_db3
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Named Pipes 
    Provider: Could not open a connection to SQL Server [53]. .
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : Login timeout 
    expired.
Sqlcmd: Error: Microsoft SQL Server Native Client 11.0 : A network-related
    or instance-specific error has occurred while establishing a connection 
    to SQL Server. Server is not found or not accessible. Check if instance 
    name is correct and if SQL Server is configured to allow remote 
    connections. For more information see SQL Server Books Online..

SQL Server Management Studioから:

enter image description here

インストールINI私がインストールした場所から、

TCPENABLED = 1

だから、TCPが有効になっていると思います。ファイアウォールの問題かもしれませんが、実行しました:

netsh advfirewallファイアウォールルール名を追加= SQLPort dir =プロトコル= tcpアクション= localportを許可する= 1433 remoteip = localsubnetプロファイル= DOMAIN

正常に完了したようです。問題が発生している場所を診断する他の手順はありますか?よろしくお願いします!

7

理解した!サーバーはリモートVMWare ESXiインスタンスで実行されているため、サブネットは完全に異なります。私が変更され:

netsh advfirewallファイアウォールルール名を追加= SQLPort dir =プロトコル= tcpアクション= localportを許可する= 1433 remoteip = localsubnetプロファイル= DOMAIN

に:

netsh advfirewallファイアウォールルール名を追加= SQLPort dir =プロトコル= tcpアクション= localportを許可する= 1433 remoteip = anyプロファイル= DOMAIN

そして、すべてがすぐに働き始めました。ええと、ファイアウォール。

5