如果需要“命名实例”参数,如何连接到 SQL Server 的默认实例?

问题描述 投票:0回答:5

我正在安装一些软件,我需要告诉它使用 SQL Server 的默认实例,但是 Installshield GUI 坚持要求我输入命名实例的信息。

目标 SQL Server 版本为 2008R2

我希望有一个干净的黑客可以使用,例如“。”或“默认”,但我还没猜到。 我也尝试过 MSSQLSERVER,但也不起作用。

sql-server t-sql instance sql-server-express named-instance
5个回答
9
投票

运行此查询:

SELECT @@SERVERNAME + '\' + @@SERVICENAME AS InstanceName

并将结果用作您的实例名称。


4
投票

所有 SQL Server 实例都存储在 Windows 注册表中。 您可以使用 Windows 工具

C:\Windows\System32\Regedt32.exe
查询注册表并在那里浏览/搜索,您可以使用C# 等语言来完成此操作(参见 示例 1) 那里) 甚至 T-SQL(也称为 Transact-SQL)。

在这个答案中,我将向您展示如何使用 T-SQL 来做到这一点。使用我在here找到的这个脚本来确定 ServerName、InstanceName、HostName 和 PortNumber:

set nocount on
Declare @key Varchar(100), @PortNumber varchar(20)

if charindex('\',CONVERT(char(20), SERVERPROPERTY('servername')),0) <>0 begin
    set @key = 'SOFTWARE\MICROSOFT\Microsoft SQL Server\'+@@servicename+'\MSSQLServer\Supersocketnetlib\TCP'
end else begin
    set @key = 'SOFTWARE\MICROSOFT\MSSQLServer\MSSQLServer\Supersocketnetlib\TCP'
end

EXEC master..xp_regread @rootkey = 'HKEY_LOCAL_MACHINE', @key = @key, 
     @value_name = 'Tcpport', @value = @PortNumber OUTPUT
SELECT  CONVERT(char(20), SERVERPROPERTY('servername')) ServerName,
        CONVERT(char(20), SERVERPROPERTY('InstanceName')) InstanceName,
        CONVERT(char(20), SERVERPROPERTY('MachineName')) as HostName, 
        convert(varchar(10), @PortNumber) PortNumber

如果

InstanceName
null
,则表示没有配置命名实例,那么您有两个非独占选项:

  1. 指定
    ServerName
    以访问默认实例
    - 或 -
  2. 使用 Sql Server 配置管理器 -> SQL Native Client XX.Y 配置 -> 别名 定义别名。例如:
    Define_Alias
    将为本地 SQL 服务器设置别名
    Inst1
    。指定
    (local)\Inst1,1433
    即可访问它。当然,除了
    (local)
    ,您还可以使用 ServerName。

    重要:设置别名后,需要重新启动相关实例的SQL服务或重新启动PC,否则将无法立即访问。如果您使用的端口不是默认端口 1433,您可能需要打开本地防火墙才能使其正常工作。

注意: 如果开始菜单中没有它,则可以在 C:\Windows\System32 中找到 SQL Server 配置管理器。查找 SqlServerManagerXX.msc(其中 XX 是 SQL 版本,例如 XX=11 或 XX=13)。


3
投票

如果您配置了默认实例,只需使用服务器主机名作为实例


0
投票

尝试

MSSQLSERVER
。根据此 MSDN 页面,这可能是默认实例名称。


0
投票

安装向导将采用 MSSQLSERVER,这意味着“默认”实例。

请参阅 MSDN 页面中的步骤 12

© www.soinside.com 2019 - 2024. All rights reserved.