0

创建了一台新的 Server 8 机器。测试 .net + SQL Server 2012 站点。我正在尝试远程连接到机器,但为此我需要启用 TCP/IP 协议。如果我尝试通过计算机管理控制台直观地执行此操作,我会得到一些奇怪的行为,如果我尝试选择任何是/否下拉列表,它只会给我一个空白列表,我无法更改值。我可以通过从配置中的上下文菜单中选择它来启用整个 TCP/IP,但是当我进入属性时,我得到启用 = 所有 IP1、IP2 等区域的否。

然后我尝试使用 SQLPS 更改它......但似乎没有采取......奇怪的是我注意到在属性下没有任何东西......看看并让我知道..

PS SQLSERVER> $MachineObject.getsmoobject($tcp.urn.Value + "/IPAddress[@Name='IP2']")



Parent              : Microsoft.SqlServer.Management.Smo.Wmi.ServerProtocol
IPAddressProperties : {Active, Enabled, IpAddress, TcpDynamicPorts...}
IPAddress           : 192.168.0.24
Urn                 : ManagedComputer[@Name='WIN-LLJKBQ6OVVR']/ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name
                      ='Tcp']/IPAddress[@Name='IP2']
Name                : IP2
Properties          : {}
UserData            :
State               : Existing
4

1 回答 1

0

在 SQL Server 上启用 TCP/IP 协议时,不仅要启用端口 1433(或其他),还需要确保将侦听器绑定到正确的接口。过去,SQL Server 会绑定到 0.0.0.0,但在最近的版本中,您可以绑定到许多选项之一:127.1、192.168.1.xx、0:0:0:0:0:0:0:1、 ::1 等。

请运行“SQL Server 配置管理器”,查看网络配置,并确保您正确配置了侦听器绑定。您可以在 shell 中使用“netstat -an”来验证它。

此外,请仔细检查您的用户帐户是否已实际启用,并且 SQL Server“混合身份验证”可能已启用。

于 2012-04-19T21:18:52.023 回答