moh*_*sem 5 sql sql-server sql-server-2012
.我在Windows server 2012上安装了SQL Server 2012,只有在服务器名称字段中写入才能连接到服务器。

但我无法使用服务器名称进行连接MSSQLSERVER。

我正在尝试从同一台计算机使用 SQL Server Management Studio 进行连接。
我检查了 TCP/IP 已启用,IP2 已启用,为所有 IP 配置了端口 1433,并为端口 1433 添加了入站规则。
还尝试多次重新启动 SQL Server 服务和 SQL Server 浏览器服务,但没有成功。
关于可能导致此问题的原因有什么想法吗?
小智 6
哇,这是一个旧帖子。尽管如此,我还是会尝试回答这个问题,以防其他人想知道。
简短的回答
MSSQLSERVER通常不用作托管SQL Server 对象(通常称为 SQL Server)的服务器的名称。由于您使用的是 SSMS,因此您只需定义 SQL 主机的名称 -主机的实际NetBIOS名称、FQDN或IP地址。
如果安装过程中没有创建实例
Server Name: ServerHostName
Run Code Online (Sandbox Code Playgroud)
如果在安装过程中创建了实例
Server Name: ServerHostName\InstanceName
Run Code Online (Sandbox Code Playgroud)
或IP地址
Server Name: ###.###.###.###\InstanceName
Run Code Online (Sandbox Code Playgroud)
如果定义的端口不是默认端口 1433
Server Name: ServerHostName,####\InstanceName
Run Code Online (Sandbox Code Playgroud)
长答案
首先问一个问题。MSSQLSERVER是服务器的实际 NetBIOS 名称吗?在谈论 SQL Server 时,有时可能会有点令人困惑,因为 SQL Server 这个名称用于描述主机以及SQL Server 对象(这是大多数人在这种情况下所指的内容)。
当使用 SSMS 等工具连接到 SQL Server 时,您首先连接到主机服务器,连接后,您将连接到 SQL 对象本身。这 ”。” 不是对象,或者不是有效的 SQL 服务器名称,除非您将 SQL 服务器命名为“.”。
关于实例,这通常是在安装 SQL Server(对象)期间定义的。安装后,如果您忘记或根本不知道实例的名称,确定 SQL Server 对象的实例名称的最快方法是检查系统服务。
services.msc
Run Code Online (Sandbox Code Playgroud)
查看正在运行的 SQL 服务。如果您在安装SQL Server对象期间创建了SQL实例,那么实例名称将在()中:即(SQLInstance)。同样,如果您在同一服务器上创建多个实例,那么您将看到多个服务名称,例如
默认实例
SQL Server
Run Code Online (Sandbox Code Playgroud)
有实例
SQL Server (SQLInstance1)
SQL Server (SQLInstance2)
Run Code Online (Sandbox Code Playgroud)
这应该可以解决这样的问题:如果一个实例正在运行,但另一个实例没有运行,您可以连接到一个实例,但不能连接到另一个实例。
如果您在安装过程中没有创建 SQL 实例,则默认 SQL 实例将始终是MSSQLSERVER,并且您不需要在SSMS的服务器名称点中定义它。
我希望这有帮助。
您可以转到 SQL Server 配置管理器 >> SQL Server 网络配置 >> MSSQLSERVER 协议
或者
SQL Native Client配置>>客户端协议
在右侧窗格分页中,您必须启用和禁用以下功能:
>> Shared Memory Enable this
>> Named Pipes Enable this
>> TCP/IP Enable this
>> VIA Disable this
Run Code Online (Sandbox Code Playgroud)
另外,检查您是否检查了混合模式身份验证。