为什么访问本地实例时需要指定服务器名称?

nox*_*rox 4 sql-server instance ssms

即使我可以直接访问物理数据库机器,我也必须dbmachine\sql在连接字段中指定,而不仅仅是实例名称。这是为什么?

Aar*_*and 7

很简单,客户端工具需要明确知道您要连接到哪台机器。这就像尝试http://localhost/test_site通过test_site在浏览器中输入内容来访问一样。

对于 SQL Server,您可以通过多种方式指示本地计算机:

  • 机器名称\实例
  • (本地)\实例
  • 127.0.0.1\实例
  • 。\实例


KAS*_*DBA 6

这可能是因为您安装了命名实例而不是默认实例或与默认实例分开安装。

所以默认实例看起来像 SERVERNAME

虽然你的例子中的命名实例是 SERVERNAME\SQL2012

来自MS-LINK

客户端应用程序连接到 Microsoft SQL Server 2005 的实例以使用 SQL Server 数据库。每个 SQL Server 实例都由一组不同的服务组成,这些服务可以具有唯一的设置。目录结构、注册表结构和服务名称都反映了您在安装过程中标识的特定实例名称。

一个实例要么是默认的、未命名的实例,要么是一个命名的实例。当 SQL Server 2005 安装在默认实例中时,它不需要客户端指定实例的名称来建立连接。客户端只需要知道服务器名称。

命名实例由计算机的网络名称加上您在安装期间指定的实例名称标识。客户端在连接时必须同时指定服务器名称和实例名称。

默认情况下,SQL Server 安装在默认实例中,除非您指定实例名称。但是,除非您在安装过程中强制进行默认安装,否则 SQL Server Express 始终安装在命名实例中。

只是为了以防万一您想了解更多两者之间的区别:

安装“默认实例”与“命名实例”有什么区别?