2

我已经在 Windows 7 64 位上安装了带有高级服务的 Microsoft SQL Server 2012 Express。在安装过程中,我选择将 SQL Server 实例配置为“默认实例”,因此我可以通过指定“localhost”、“(local)”、“MyComputerName”或“。” 在 Microsoft SQL Server Management Studio 的“服务器名称:”字段中(在每种情况下,连接在 SQL Server Management Studio 的左侧列中显示为“SQL Server 11.0.3128 - MyComputerName\MyUserName”。但是当我访问从控制面板的管理工具中的服务窗口,我可以看到安装的 SQL Server 实例正在使用连接名称“NT Service\MSSQLSERVER”运行。这对应于“

鉴于此配置,为什么我无法通过在 SQL Server Management Studio 的服务器名称字段中指定 MSSQLSERVER 或 NT Service\MSSQLSERVER 来连接?如何使这种替代连接机制起作用(无需重新创建新的 SQL Server 实例)?

可能我没有完全理解连接、连接字符串和连接类型在 Winodows 下是如何工作的,以及底层的 Windows 特定连接协议是什么。也许有人可以指出这些细节,并理清与这些相关的任何令人困惑的问题,当有人知道 TCP/IP 但不太了解专有 Windows 网络协议时会出现这些问题。

谢谢。

4

2 回答 2

2

我认为您对两种连接身份验证类型感到困惑:

  • Windows 身份验证

  • SQL 服务器身份验证

要远程访问 SQL 服务器,您必须创建一个 SQL 用户帐户或从经过 Windows 身份验证的用户访问它。

  • Windows 身份验证:假设您有一个域控制器,其中有一个名为 MSSQL_USERS 的组,那么您必须将该组添加到 SQL Server 中并授予对它的正确访问权限,之后您可以使用 Windows 远程连接到 sql server在属于该组的用户登录到 Windows 后确定身份验证。

  • SQL 服务器身份验证:MS SQL 服务器使您可以使用密码创建用户并授予他们对所需访问权限、数据库、任务的访问权限...在 SQL 服务器实例上创建一个带有密码的帐户将使您能够访问连接到那个例子。

现在,如果您的实例名为“MSSQLSERVER”,那么您必须将其放在服务器名称\IP 地址之后,例如:192.168.3.9\MSSQLSERVER
或 SQL_SERVER\MSSQLSERVER

如果您在本地工作,则无需输入服务器名称。如果服务器名称不起作用,那么您的 DNS 可能有问题,输入 IP 地址总是更安全,并且可以解决此类问题。


要启用与服务器的网络连接,您必须从以下位置启用与服务器的远程连接:

1-右键单击服务器>转到属性

2-转到连接并启用远程连接

在安装过程中,您必须为数据库引擎选择一种身份验证模式。有两种可能的模式:Windows 身份验证模式和混合模式,混合模式使您能够通过 SQL 身份验证和 Windows 身份验证两种类型连接到 SQL Server,如果您拥有的安装程序中没有该选项,那么您应该去到

服务器属性>安全选项卡>服务器身份验证

此外,当您安装 MS SQL 服务器时,您可以为 SQL 服务器管理员“sa”用户分配密码,但只有在启用混合模式时才会启用密码,因为 Windows 身份验证模式将禁用 SQL 服务器身份验证。

于 2013-11-24T14:05:08.113 回答
0

对我来说 - 我从过去安装了多个 SQL 服务器实例,我试图检查旧版本的配置管理器。当我尝试在 Win+R 中打开“SQLSERVERMANAGER10.msc”时,这是适用于 SQL Server 2008 的正确服务,它对我有用。

如果您尝试在 localhost 上进一步设置端口 1433 - 请尝试以下操作 - https://msdn.microsoft.com/en-IN/library/ms177440.aspx

于 2016-05-07T02:41:32.873 回答